У меня есть этот класс:метод GetAccessors Property Info Возвращение IsVirtual для невиртуальной собственности
public class Model : IModel
{
public int Id {get; set;}
}
public interface IModel
{
int Id {get; }
}
я получаю информацию собственности следующим образом:
var properties = typeof(T).GetProperties(BindingFlags.Public | BindingFlags.Instance);
var property = properties[0];
var isVirtual = property.GetAccessors()[0].IsVirtual;
isVirtual
является true
. Почему это происходит, даже если свойство явно не помечено как виртуальное?
Я проверяю «Модель», потому что «T» - это конкретный класс. Кроме того, возвращаемые свойства возвращаются в класс 'Model', а не только в' IModel'. –
Можете ли вы проверить с помощью модели непосредственно вместо T – usercr
Весь метод является расширением для 'IEnumerable'. а не для определенного класса. –