在Visual Studio 2013,我们推出了添加新的项目对话框。 此对话框取代了是曾在2012年这个的对话框作品,所有ASP.NET项目(MVC,Web窗体和Web API)。 这就是我们如何提供“一个ASP.NET”愿景的一个例子。 我们还发布了适用于Visual Studio 2012年同样的支持。

其中,我们曾与添加视图的对话框增强了自定义生成文件的能力。 要做到这一点的方法是相当简单的。 如果你想调整对话框的结果,你不得不相应T4文件(复制在T4更多信息 )到正确的位置在您的项目,对其进行修改以满足您的需求。 我们遵循同样的模式。 我们已经通过使用简化了使用流程。

在这篇文章中我将首先描述如何自定义新Scaffoldded项目对话框生成的内容,以及解释如何工作的。 为了简化,我们将使用使用端至端流动SideWaffle 。 我有关于你的情况下,希望避免在安装使用的一些步骤,在底部SideWaffle 。 试试下面的步骤开始。

如何自定义生成的输出

要为特定项目自定义生成的内容请按照下列步骤。

1. 下载并安装SideWaffle如果您还没有

2. 右键单击您的Web项目,并选择添加新项。 选择下图中所示的模板,然后单击确定。

a.

3. 自定义您的项目在CodeTemplates文件夹中的文件.t4

当你调用ASP.NET脚手架T4文件项模板将放弃所有你需要为你的项目名为CodeTemplates顶层文件夹中的文件.t4。 根据您的项目语言(C#/ VB)正确的文件添加到项目中。 此文件夹下的每个文件夹都代表一个单独的棚架,我们发货。 在下面的图片,你可以看到这些文件夹的名称。

可以通过该文件夹的名称的文件夹连接到棚架。 该名称是相当直接的,例如MvcControllerEmpty文件夹对应于MVC 5控制器-棚架。 在每个文件夹,你会发现,具体的施工人员将在脚手架过程中使用的文件。 由于大多数现有的脚手架生成1个文件,你会发现通常只有1 .t4目录中的文件。 对于架子工能产生超过1个文件,你会发现更多的文件。

让我们调整的空MVC控制器支架。 让我们来看看什么是下MvcControllerEmpty文件夹。 该文件夹中有一个单一的.t4文件,Controller.cs.t4( Controller.vb.t4如果VB)。 下面是该文件的当前内容。

<#@模板语言=“C#”HostSpecific =“真”#>

<#@输出扩展=“CS”#>

<#@参数类型=“System.String”NAME =“ControllerName”#>

<#@参数类型=“System.String”NAME =“ControllerRootName”#>

<#@参数类型=“System.String”NAME =“命名空间”#>

<#@参数类型=“System.String”NAME =“AREANAME”#>

使用系统;

使用System.Collections.Generic;

使用System.Linq的;

使用的System.Web;

使用System.Web.Mvc;

命名空间<#=#命名空间>

{

公共类<#=#ControllerName>:控制器

{

//

// GET:<#=(!String.IsNullOrEmpty(AREANAME))? (“/”+ AREANAME):的String.Empty#> / <#= ControllerRootName#> /

公众的ActionResult指数()

{

返回查看();

}

}

}

比方说,你愿意把你的using语句命名空间内,我们将修改这个文件有以下内容代替。

<#@模板语言=“C#”HostSpecific =“真”#>

<#@输出扩展=“CS”#>

<#@参数类型=“System.String”NAME =“ControllerName”#>

<#@参数类型=“System.String”NAME =“ControllerRootName”#>

<#@参数类型=“System.String”NAME =“命名空间”#>

<#@参数类型=“System.String”NAME =“AREANAME”#>

命名空间<#=#命名空间>

{

使用系统;

使用System.Collections.Generic;

使用System.Linq的;

使用的System.Web;

使用System.Web.Mvc;

公共类<#=#ControllerName>:控制器

{

//

// GET:<#=(!String.IsNullOrEmpty(AREANAME))? (“/”+ AREANAME):的String.Empty#> / <#= ControllerRootName#> /

公众的ActionResult指数()

{

返回查看();

}

}

}

现在,当我创建一个新的空MVC控制器生成的输出如下。

命名空间WebApplication2.Controllers

{

使用系统;

使用System.Collections.Generic;

使用System.Linq的;

使用的System.Web;

使用System.Web.Mvc;

公共类Default3Controller:控制器

{

//

// GET:/ Default3 /

公众的ActionResult指数()

{

返回查看();

}

}

}

这一切就是这么简单。 您可以检查这些文件,然后当你的团队成员获得最新的他们将有相同的行为。

如何获得SideWaffle

如果你想做到这一点无需安装SideWaffle,它还是很容易的。 您可以从本地计算机中的文件直接复制到您的项目。 你会发现所有你需要复制位于C文件夹\ Program Files文件(x86)的\微软的Visual Studio 12.0 \ Common7 \ IDE \扩展\ MICROSOFT \网络\mvc \脚手架\模板 。 您可以在文件夹中的内容复制到顶层文件夹命名为CodeTemplates到你的项目,如上图所示。 仅供参考,如果你这样做C#和VB文件将被添加到您的项目。 你可以简单地摆脱那些不符合您的项目使用的语言的文件。

编码生成器

与CodeGenerator结束脚手架是不可扩展中相同的方式,其他的模板。

自定义视图

您可以通过创建在MvcView文件夹的新.t4文件创建自己的视图模板。 例如在MvcView文件夹中我复制了Create.cs.t4文件,并重新命名它Sayed.cs.t4文件和定制的内容。 之后,调用时添加视图所产生的添加视图对话框包含我的自定义视图模板。 你可以看到这下面的图片。

此示例是非常基本的,但我敢肯定,你能想象更为复杂的调整您的特定需求。 请让我们知道你想在下面的评论这些功能是什么。

Visual Studio 2013中的新项目对话框的更多相关文章

  1. SharpDX初学者教程第1部分:在Visual Studio 2013中设置SharpDX项目

    原文 http://www.johanfalk.eu/blog/sharpdx-tutorial-part-1-setting-up-a-sharpdx-project-in-visual-studi ...

  2. 在Visual Studio 2013中编译libssh2项目

     一. 下载需要的外部包,并解压,下面给出的链接如果无法访问,就google搜索下载一下: •下载openssl •下载zlib 二.修改libssh2项目配置: 1.C/C++->Gene ...

  3. Visual Studio 2013 无法创建MVC项目,系统找不到指定的文件.(Exception from HRESULT:08x0070002)

    在Visual Studio 2013中创建新MVC项目,(PS:现在创建个MVC项目,差点都找不到在哪,汗!-) 确定后提示,系统找不到指定的文件.(Exception from HRESULT:0 ...

  4. 在 Visual Studio 2013 中创建 ASP.NET Web 项目(0):专题导航 [持续更新中]

    写在前面的话 随着 Visual Studio 2013 的正式推出,ASP.NET 和 Visual Studio Web 开发工具 也发布了各自的最新版本. 新版本在构建 One ASP.NET ...

  5. 在 Visual Studio 2013 中创建 ASP.NET Web 项目(1):概述 - 创建 Web 应用程序项目

    注:本文是“在 Visual Studio 2013 中创建 ASP.NET Web 项目”专题的一部分,详情参见 专题导航 . 预备知识 本专题适用于 Visual Studio 2013 及以上版 ...

  6. Visual Studio 2013新建ASP.NET项目使用Empty模板,在页面中使用验证控件出错的解决方案

    Visual Studio 2013新建ASP.NET项目使用Empty模板,在页面中使用验证控件,运行页面,会出现如下的错误: 错误原因 VisualStudio 2012(或2013) WebFo ...

  7. 在ASP.NET MVC5 及 Visual Studio 2013 中为Identity账户系统配置数据库链接及Code-First数据库迁移

    在ASP.NET MVC5 及 Visual Studio 2013 中为Identity账户系统配置数据库链接及Code-First数据库迁移 最近发布的ASP.NET MVC 5 及Visual ...

  8. 在Visual Studio 2013 中使用C++单元测试

    本文主要介绍在Visual Studio 2013中对代码进行单元测试的方法,包含了两方面的内容:对已有的Dll文件进行单元测试,以及对已有的源文件进行单元测试. 1. VS2013对DLL文件的单元 ...

  9. 转载:在Visual Studio 2013中管理中国特色的社会主义Windows Azure

    原文链接: http://www.pstips.net/get-azurechinacloud-settings.html 谷歌被豪迈地放弃了中国市场,微软仍旧在中国市场摸爬滚打,跪着挣钱.其中私人定 ...

随机推荐

  1. secureCRT简单上传、下载文件记录

    secureCRT简单上传.下载文件记录: 1)sz下载 -y 覆盖 2)rz上传 -y 覆盖 3)以上两个命令属于安装时包含在“Dial-up Networking Support"组中 ...

  2. mysql function 与 procedure

    Mysql 的 function 和 procedure 有啥区别呢 ? 网上搜索后说 function 有返回值, procedure 无返回值. 1.return  从function 的语法角度 ...

  3. 数组方法slice()把类数组转成数组和复制一个数组

    function a(){ console.log(arguments.length); var c = [].slice.call(arguments);//类数组转成数组 c.push(5); c ...

  4. java多线程下载和断点续传

    java多线程下载和断点续传,示例代码只实现了多线程,断点只做了介绍.但是实际测试结果不是很理想,不知道是哪里出了问题.所以贴上来请高手修正. [Java]代码 import java.io.File ...

  5. Activiti的Eclipse插件离线安装指南

    原文地址:http://www.tuicool.com/articles/yUnURjy

  6. SPRING IN ACTION 第4版笔记-第六章RENDERING WEB VIEWS-002- Spring的JSP标签之form标签(<sf:input><sf:errors><sf:form>)

    一. Spring offers two JSP tag libraries to help define the view of your Spring MVC web views. One tag ...

  7. Cppcheck 用法(上篇)

    http://blog.csdn.net/u011012932/article/details/52778149

  8. Windows 内核(WRK)编译

    引子 WRK 是微软于 2006 年针对教育和学术界开放的 Windows 内核的部分源码, WRK(Windows Research Kernel)也就是 Windows 研究内核, 在 WRK 中 ...

  9. WCF - Consuming WCF Service

    WCF services allow other applications to access or consume them. A WCF service can be consumed by ma ...

  10. Android开发UI之自定义控件的皮肤

    定义一个button的皮肤,设置属性android:background="@drawable/button_skin",button_skin.xml文件为要下文中的资源文件. ...