Мне нужно создать тип, который имеет два свойства с тем же именем и только отличается по типу возврата. Динамически излучать этот тип посредством отражения вполне приемлемо.
Что-то вроде этого:
public TypeA Prop { get; }
public TypeB Prop { get; }
Я понимаю, что я не могу использовать это свойство из С# или VB.NET или многих других языков .NET.
Чтобы избежать ответов, объясняющих мне, почему я не хочу этого делать, позвольте мне объяснить, зачем мне это нужно: мне нужно воспроизвести ошибку.
В частности, у меня есть ошибка в AutoFixture, где Moq типа приведет к тому, что он исключит исключение в некоторых случаях. Проблема в том, что тип, выпущенный Moq, содержит два свойства, названные "Mock", которые отличаются только типом возврата.
Я хотел бы воспроизвести этот сценарий в unit test, но я бы предпочел не брать зависимость от Moq только по этой единственной причине, поэтому я хотел бы воспроизвести поведение внутри пакета тестов.