vs2013中,自定义mvc 添加视图脚手架
2014-01-16 15:56
441 查看
参考文章:
http://weblogs.asp.net/imranbaloch/archive/2013/09/15/customizing-the-asp-net-mvc-5-web-api-2-scaffolding-templates.aspx
http://www.hanselman.com/blog/ModifyingTheDefaultCodeGenerationscaffoldingTemplatesInASPNETMVC.aspx
mvc5的脚手架位置与之前的有点不一样
在
C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\Extensions\Microsoft\Web\Mvc\Scaffolding\Templates
之前是在
C:\Program Files (or x86)\Microsoft Visual Studio 10.0\Common7\IDE\ItemTemplates\CSharp (or Visual Basic)\Web\MVC (or 2) 3\CodeTemplates
在自己的项目里,建立一个 CodeTemplates 文件夹
下面有一个 MvcView文件夹
在此文件夹中建立 Create1.cs.t4
在controller里,使用添加视图,就可以找到这个模板了。
如果你是把默认的copy过来,修改的,那只copy这一个是不行的,因为里面有一些对其他模板的引用
要么,全copy过来,要么把引用的地方换成具体的内容
另外,copy来的模板里有这么一句
<script src="~/Scripts/jquery-<#= JQueryVersion #>.min.js"></script>
其中的变量JQueryVersion我没找到是哪里定义的,copy代码过来,这个玩意会报错
模板参数
参数与界面上的东西基本是对应的。
至少是要指定一个模型类的
如果你想要创建不太模型的脚手架,类似默认提供的 Empty(不具有模型)
你需要把t4放在 MvcViewWithoutModel 文件夹下
http://weblogs.asp.net/imranbaloch/archive/2013/09/15/customizing-the-asp-net-mvc-5-web-api-2-scaffolding-templates.aspx
http://www.hanselman.com/blog/ModifyingTheDefaultCodeGenerationscaffoldingTemplatesInASPNETMVC.aspx
mvc5的脚手架位置与之前的有点不一样
在
C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\Extensions\Microsoft\Web\Mvc\Scaffolding\Templates
之前是在
C:\Program Files (or x86)\Microsoft Visual Studio 10.0\Common7\IDE\ItemTemplates\CSharp (or Visual Basic)\Web\MVC (or 2) 3\CodeTemplates
在自己的项目里,建立一个 CodeTemplates 文件夹
下面有一个 MvcView文件夹
在此文件夹中建立 Create1.cs.t4
在controller里,使用添加视图,就可以找到这个模板了。
如果你是把默认的copy过来,修改的,那只copy这一个是不行的,因为里面有一些对其他模板的引用
要么,全copy过来,要么把引用的地方换成具体的内容
另外,copy来的模板里有这么一句
<script src="~/Scripts/jquery-<#= JQueryVersion #>.min.js"></script>
其中的变量JQueryVersion我没找到是哪里定义的,copy代码过来,这个玩意会报错
模板参数
<#@ parameter type="System.String" name="ViewDataTypeName" #> <#@ parameter type="System.String" name="ViewDataTypeShortName" #> <#@ parameter type="System.Boolean" name="IsPartialView" #> <#@ parameter type="System.Boolean" name="IsLayoutPageSelected" #> <#@ parameter type="System.Boolean" name="ReferenceScriptLibraries" #> <#@ parameter type="System.Boolean" name="IsBundleConfigPresent" #> <#@ parameter type="System.String" name="ViewName" #> <#@ parameter type="System.String" name="LayoutPageFile" #> <#@ parameter type="Microsoft.AspNet.Scaffolding.Core.Metadata.ModelMetadata" name="ModelMetadata" #>
参数与界面上的东西基本是对应的。
至少是要指定一个模型类的
如果你想要创建不太模型的脚手架,类似默认提供的 Empty(不具有模型)
你需要把t4放在 MvcViewWithoutModel 文件夹下
相关文章推荐
- 彻底解决asp.net mvc5.2.2:vs2013 cshtml视图文件报错(当前上下文中不存在名称“model”,ViewBag,Url)
- Xamarin.VisualStudio安装后导致VS2013打不开MVC的视图文件cshtml
- VS2013 MVC 4.0 无法添加服务引用,可以配置,但是无法生成引用类,在对象管理器里查找不到对应类,请问是何原因造成,如何解决
- VS2013 自定义添加创建者、创建时间等个人信息新建文件模版
- Windows7 + VS2013 + Cocos Code IDE Lua调用自定义C++类
- net-snmp源码VS2013编译添加加密支持(OpenSSL)
- CollectionView瀑布流添加头视图,自定义Cell计算高度
- VS2013添加WebServices
- VS2015 安装web essentials导致无法打开MVC视图文件(chtml)
- 解决VS2013 添加VASSISTX后中文输入为问号
- VS2013添加图片控件报错error RC2108: expected numerical dialog constant
- 低版本系统兼容的ActionBar(四)添加Tab+添加自定义的Tab视图+Fragment
- vs2015升级后台mvc视图编辑器默认不是razor视图引擎问题
- MVC 5 属性路由中添加自己的自定义约束
- crm2011的给lookup字段添加自定义视图
- VS2013如何添加LIb库及头文件的步骤
- Asp.Net MVC 视图 创建自定义HTML Helpers
- MVC中添加视图
- 使用VS环境类向导添加自定义消息
- ASP.NET MVC自定义视图引擎ViewEngine 创建Model的专属视图