我们在创建视图或控制器时使用(需要告诉文件在哪里,谢谢)自定义 T4 代码模板。默认实现使这种类型的第一行。
<%@ Page Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage<ProjectNameHere.ViewModels.ViewModelClass>" %>
我们已经在 Web.config 中定义了 ViewModel 和 MVC 命名空间,所以我想要代码模板来生成它。
<%@ Page Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="ViewPage<ViewModelClass>" %>
有什么建议如何修改默认模板以获得这种结果?哪些模板行实际生成了这些?
更多信息
我知道文件在哪里并且已经进行了修改。问题是他们在模板中使用这个
string mvcViewDataTypeGenericString = (!String.IsNullOrEmpty(mvcHost.ViewDataTypeName)) ? "<" + mvcHost.ViewDataTypeName + ">" : String.Empty;
似乎 ViewDataTypeName 包含完整的命名空间引用。我想只获取类的名称(在本例中为 ViewModel 类名称)