определяет класс, который реализует интерфейс, потому что этот класс не реализует недавно введенное свойство.

оложим, у нас естьclass X в версии 1 сборкиA.dll:

class X {
    SomeType Property { set; get; }
}

а потом в версии 2 сборкиA.dll:

class X {
    SomeType Property { set; get; }
    SomeType OtherProperty { set; get; }
}

Теперь предположим, что у нас есть вторая сборкаB.dll что загружаетA.dll и использует X. Будет ли добавление свойстваOtherProperty сломать ABI? БудетB.dll не использоватьA.dll/X? Если нет, будет ли порядок объявлений иметь какое-либо значение? Если свойства были виртуальными, имело ли это какое-то значение?

Наверное, я действительно спрашиваю: каковы общие правила ABI? Я знаю, что менять интерфейсы после их публикации - это плохо, но я действительно хотел бы иметь возможностьДобавлять свойства в некоторых случаях, без добавления подклассов.

Ответы на вопрос(3)

Ваш ответ на вопрос