zoukankan      html  css  js  c++  java
  • vs2013中,自定义mvc 添加视图脚手架

    参考文章:

    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.0Common7IDEExtensionsMicrosoftWebMvcScaffoldingTemplates

    之前是在

    C:Program Files (or x86)Microsoft Visual Studio 10.0Common7IDEItemTemplatesCSharp (or Visual Basic)WebMVC (or 2) 3CodeTemplates

    在自己的项目里,建立一个 CodeTemplates 文件夹

    下面有一个 MvcView文件夹

    在此文件夹中建立 Create1.cs.t4

    image

    在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" #>
    image

    参数与界面上的东西基本是对应的。

    至少是要指定一个模型类的

    如果你想要创建不太模型的脚手架,类似默认提供的 Empty(不具有模型)

    你需要把t4放在 MvcViewWithoutModel 文件夹下

    image

    image

  • 相关阅读:
    17-canvas绘制扇形
    16-canvas绘制圆弧
    15-canvas渐变色
    14-canvas绘制柱状图
    13-绘制矩形的简写方式
    12-es6类的方式封装折线图
    11-canvas绘制折线图
    10-canva绘制数据点
    jenkins 环境部署 (yum安装方式)
    BerkeleyDB安装
  • 原文地址:https://www.cnblogs.com/czcz1024/p/3522674.html
Copyright © 2011-2022 走看看