大图:
我发现了Razor似乎是一个限制,我无法想出一个好方法.
玩家们:
假设我有一个这样的模型:
public abstract class BaseFooModel<T>
where T : BaseBarType
{
public abstract string Title { get; } // ACCESSED BY VIEW
public abstract Table<T> BuildTable();
protected Table<T> _Table;
public Table<T> Table // ACCESSED BY VIEW
{
get
{
if (_Table == null)
{
_Table = BuildTable();
}
return _Table;
}
}
}
Run Code Online (Sandbox Code Playgroud)
像这样的子类:
public class MyFooModel : BaseFooModel<MyBarType>
{
// ...
}
public class MyBarType : BaseBarType
{
// ...
}
Run Code Online (Sandbox Code Playgroud)
我希望能够传递MyFooModel到这样定义的剃刀视图:
// FooView.cshtml
@model …Run Code Online (Sandbox Code Playgroud)