Visual Studio 2013中的新项目对话框
在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中的新项目对话框的更多相关文章
- SharpDX初学者教程第1部分:在Visual Studio 2013中设置SharpDX项目
原文 http://www.johanfalk.eu/blog/sharpdx-tutorial-part-1-setting-up-a-sharpdx-project-in-visual-studi ...
- 在Visual Studio 2013中编译libssh2项目
一. 下载需要的外部包,并解压,下面给出的链接如果无法访问,就google搜索下载一下: •下载openssl •下载zlib 二.修改libssh2项目配置: 1.C/C++->Gene ...
- Visual Studio 2013 无法创建MVC项目,系统找不到指定的文件.(Exception from HRESULT:08x0070002)
在Visual Studio 2013中创建新MVC项目,(PS:现在创建个MVC项目,差点都找不到在哪,汗!-) 确定后提示,系统找不到指定的文件.(Exception from HRESULT:0 ...
- 在 Visual Studio 2013 中创建 ASP.NET Web 项目(0):专题导航 [持续更新中]
写在前面的话 随着 Visual Studio 2013 的正式推出,ASP.NET 和 Visual Studio Web 开发工具 也发布了各自的最新版本. 新版本在构建 One ASP.NET ...
- 在 Visual Studio 2013 中创建 ASP.NET Web 项目(1):概述 - 创建 Web 应用程序项目
注:本文是“在 Visual Studio 2013 中创建 ASP.NET Web 项目”专题的一部分,详情参见 专题导航 . 预备知识 本专题适用于 Visual Studio 2013 及以上版 ...
- Visual Studio 2013新建ASP.NET项目使用Empty模板,在页面中使用验证控件出错的解决方案
Visual Studio 2013新建ASP.NET项目使用Empty模板,在页面中使用验证控件,运行页面,会出现如下的错误: 错误原因 VisualStudio 2012(或2013) WebFo ...
- 在ASP.NET MVC5 及 Visual Studio 2013 中为Identity账户系统配置数据库链接及Code-First数据库迁移
在ASP.NET MVC5 及 Visual Studio 2013 中为Identity账户系统配置数据库链接及Code-First数据库迁移 最近发布的ASP.NET MVC 5 及Visual ...
- 在Visual Studio 2013 中使用C++单元测试
本文主要介绍在Visual Studio 2013中对代码进行单元测试的方法,包含了两方面的内容:对已有的Dll文件进行单元测试,以及对已有的源文件进行单元测试. 1. VS2013对DLL文件的单元 ...
- 转载:在Visual Studio 2013中管理中国特色的社会主义Windows Azure
原文链接: http://www.pstips.net/get-azurechinacloud-settings.html 谷歌被豪迈地放弃了中国市场,微软仍旧在中国市场摸爬滚打,跪着挣钱.其中私人定 ...
随机推荐
- [HTML]img标签属性
<img src="image.png" width="" height="" align="absmiddle" ...
- GAC write failed when upgrade with InstallShield
在接近final-build的时候,突然发现当前版本从上一个版本upgrade的时候,需要写到GAC (Global Assembly Cache)的assambly会写失败掉.但是只会在特定的Mic ...
- Sersync实时同步企业应用配置实战
一.实验环境 CentOS版本: 6.6(2.6.32.-504.el6.x86_64) Rsync版本: Rsync-3.0.6(系统自带) Sersync版本:sersync2.5.4_64bi ...
- javascript高级编程笔记01(基本概念)
1.在html中使用JavaScript 1. <script> 元素 <script>定义了下列6个属性: async:可选,异步下载外部脚本文件. charset:可选, ...
- Android 绘制计时器
用小米的手机,发现其实还可以,无意间点开小米的计时器,发现界面非常好看和实用.于是自己仿照着写一个,由于技术不好,代码整体结构上可能有点乱,但主要的实现功能和掌握知识点. Android中绘制采用ca ...
- C#压缩、解压缩文件(夹)(rar、zip)
主要是使用Rar.exe压缩解压文件(夹)(*.rar),另外还有使用SevenZipSharp.dll.zLib1.dll.7z.dll压缩解压文件(夹)(*.zip).需要注意的几点如下: 1.注 ...
- csuoj 1350: To Add Which?
这个题目其实很简单,可惜当时比赛的时候看到出的人少,以为有trick,就和队友扯淡去了: 因为每个数总是被相邻的数影响,所以往前往后扫两遍就行了: #include<cstdio> #in ...
- join的一对多,去除重复,排序优先的group方法
想将问题列表按照最新回答来排列.但问题和回答是分拆在两张表来存放的.所以,要完成上述需求,需从主表“问题”取显示数据,但是得按照次表(回答)的更新日期来排序. 用join来做,始终无法去除重复,折腾了 ...
- 快速排序法QuickSort
/** * * @author Administrator * 功能:交换式排序之快速排序 */ package com.test1; import java.util.Calendar; publi ...
- 怎样在WINDOWS下面编译LIBCURL
我测试过,好像没OK This is a short note about building cURL with SSL support on Windows. Tools required: cUR ...