Я хочу получить доступ к свойству нового созданного объекта в универсальном методе, который ограничен интерфейсом:
public interface MyInterface
{
int ID { get; set; }
string Name { get; set; }
}
Поскольку компилятор знает, что "T" имеет тип MyInterface, должна быть возможность доступа к свойствам этого интерфейса:
public T doSomething<T>(String value) where T : MyInterface, new()
{
T entity = new T();
entity.Name = value;
return entity;
}
Но он говорит: T не имеет определения для «Имени»
Если я могу использовать интерфейс в качестве ограничения здесь: почему невозможно получить доступ к его свойствам?