我有一个观点,我想给模型,但模型可能是2种类型的可能。例如:使用泛型查看模型
public class Super {
public string Name = "super";
}
public class Sub1 : Super {
public string Name = "sub1";
}
public class sub2 : Super {
public string Name = "sub2";
}
我试图与仿制药进行试验,看我看我可以做下面的一些其他问题,不过,我是不是正确的声明类中的变量?
public class Generic<T> where T : Super {
public T SubClass { get; set; } //is this ok?
}
如果这是好的,我该如何将这样的类作为模型添加到视图?
@model Generic<??>
<div>@Model.SubClass.Name</div>
这是甚至可行的,我是在正确的轨道上,还是我只是做一大堆什么都没有?
我不认为你需要为这个仿制药。用'Super'替换'T'。 – Matthew
你可以这样做,但我在这里没有看到任何令人信服的理由。也许你需要添加更多,更具体的上下文?另外,重新声明'Name'会隐藏基类中的成员,并且可能不会像您期望的那样工作。 –