是什么,在哪里可以找到MvcTextTemplateHost

|| 我想知道这是MvcTextTemplateHost。我在create.tt文件中有此文件,但在我的bin文件夹中(使用对象查看器搜索)找不到它。我阅读并发现它在我的 VisualStudio.Extensions.web.dll,但我找不到此dll 我读过 “ MvcTextTemplateHost”和“ VisualStudio”的T4参考。 我只想知道此类具有哪些属性和方法。我希望使用t4文本编辑器。我安装了一些,但没有任何东西使我对这堂课有智力的了解。     
已邀请:
        MvcTextTemplateHost是MVC 3.0(添加>视图和添加>控制器)对话框的\“ Host \”,并维护用户交互: 因此该工具在工具外部不可用。当您提供\“ Scaffolding \”模板(.tt文件)时,管理器会将这些用户输入传递给主机,因此主机将具有这些属性。 该类打包在: ($ VSDIR)\\ Common7 \\ IDE \\ Microsoft.VisualStudio.Web.Mvc.3.01.dll 希望能帮助到你。     
        就我而言,解决方案是。将这些行添加到controllerWithContext.tt
<#@ assembly name=\"C:\\Program Files (x86)\\Microsoft Visual Studio 10.0\\Common7\\IDE\\Microsoft.VisualStudio.Web.Mvc.3.01.dll\" #>
旁边的:
<#@ import namespace=\"System.Reflection\" #>
之前:
<#@ import namespace=\"Microsoft.VisualStudio.Web.Mvc.Scaffolding.BuiltIn\" #>
祝好运     
        您可以在VS安装方向上找到所有.tt文件,例如,要获取MVC4 .tt文件,请转到:($ VSDir)\\ Common7 \\ IDE \\ ItemTemplates \\ CSharp \\ Web \\ MVC 4 \\ CodeTemplates 要获得MvcTextTemplateHost的动态属性列表,可以将以下代码添加到.tt文件中:
<#
Type myType = mvcHost.GetType();
IList<PropertyInfo> props = new List<PropertyInfo>(myType.GetProperties());

foreach (PropertyInfo prop in props)
{
#>
    <#= prop.Name #>
<#
}
#>
我在MVC4中创建列表视图时运行了它,出现的一些属性是:
ViewName 
IsPartialView 
IsContentPage 
ReferenceScriptLibraries
AutoEventWireup 
MasterPageFile 
...
    
        安装用于修改Visual Studio自动生成的CRUD页的T4模板后,出现了以下问题:在ASP.NET MVC 3中如何创建自己的Scaffold模板? 对我来说,解决方案只是关闭Visual Studio 2012,然后单击“是”以保存解决方案。当我重新打开它时,一切都神奇地恢复了正常。关于此答案的评论表明,此方法适用于类似情况:https://stackoverflow.com/a/13816299/176877     

要回复问题请先登录注册