page

by

Ameet Phadnis
Feedback

 
 

简介:

记得在我第一次做项目的时候,我就在尝试找出一种方法来提高项目开始的效率(jump start my projects)。在使用Visual Studio 2003的年代,我在ASPAlliance中写了一篇文章是基于Visual Studio 2003的模板开发的,这篇文章我看到了一些好的回应。然后就是Visual Studio 2005发布了,我接着就受到了一些邮件,其中就有询问的以前在Visual Studio 2003中介绍的模板使用方法在Visual Studio 2005中是否适用?其实如果在Visual Studio 2005中还使用原来Visual Studio 2003的方法那么就太复杂了。Visual Studio 2005中建立一种更加便捷、简单的模板建立方式,当然如果你还是对于我原来针对Visual Studio 2003中使用模板方法感兴趣的话你可以通过这个链接去查看。

背景资料

好了,首先先回答一个问题:我们为什么需要使用模板?在一个公司或者项目组中往往会在同时存在很多项目。而且很多项目之间的结构都非常的相似,统一的风格当然对于一个企业和团队来说是一件好事。在通常,如果不考虑使用模板,那么我们传统的做法就是将一些已经存在的工程项目进行拷贝-粘帖,然后再在此基础上进行修改,但是这种做法不仅效率低,而且在粘帖-复制的过程中,每个项目都有可能对系统的结构进行针对性的调整,那么经过几轮项目的修改可能系统结构和最开始的系统结构已经有了很大的处于,并且存在很多没有用的冗余数据、代码,很容易出错。所以一种比较好的方法是,在项目开始前,我们先依照一种特定的模板将系统的框架先搭建出来,然后我们在再此基础上进行项目的开发工作。

就我们公司的情况(作者所在公司是一家咨询公司,consulting company),我们也会为一些服务商(service providers)建立一些系统,这些系统一般都是基于ASP.NET 2.0平台,具备的功能一般是:

1、用户登录;

2、注册公司;

3、注册个人,等等。

在这篇文章,我就基于这个需求来说明如何建立一个基于网站项目的模板(create a web template)。

结构说明:

在我们开始之前,我想先说明一下VS2005的模板结构。在安装了VS2005以后系统会默认的安装一些项目/文件项的模板。比如:如果要建立一个网络应用程序(Web Application)那么我们可以选择ASP.NET Web Site、ASP.NET Web Service、Personal Web Site Starter Kit, Empty Web Site 或者 ASP.NET Crystal Reports Web Site等。当我们从Visual Studio 2005中选择“文件”-> “新建”-> “网站”那么系统将会展示如图1所示的对话框。

图1

一般地,Visual Studio 2005从以路径中查找内置模板:

【文件安装路径】\Common7\IDE\ProjectTemplates\Web\【语言】\【数字】\...

如:C:\Program Files\Microsoft Visual Studio 8\Common7\IDE\ProjectTemplates\Web\VisualBasic\1033

当你进入对应的文件夹,你会发现每个模板选择其实在文件夹中都是针对zip格式的压缩文件。在zip文件中包含了模板建立所需要的所有文件,并有一个以.vstemplate后缀名结尾的文件,这个文件中以XML格式定义了模板中的各项数据,将这些模板文件统一为一个模板整体,是对模板进行描述的元数据。

那么我们自己建立的模板会放在什么位置呢?是放在和内置模板同样的位置吗?其实不一定,在Visual Studio 2005中可以选择自定义模板存放的具体位置。这种灵活性有很大的好处,比如你可以将模板放在一个网络可访问的目录下,这种所有项目组或者团队的成员都可以通过配置地址指向这个网络地址,从而获取统一的模板视图和最新的模板。我们可以通过如下方式来设置Visual Studio 2005中自定义模板的存放位置:

1、在Visual Studio 2005中选择“工具”-> “选项”;

2、展开“项目和解决方案”文件夹;

3、选择“常规”选项;

4、在右侧就可以看到针对“项目模板”、“文件项模板”的位置,可以进行修改。

.vstemplate元数据文件

.vstemplate文件内容由如下部门组成。

·         TemplateData - 这个配置节中包含了在选择模板对话框中模板的信息。

·         Name: 模板名称.

·         Description: 模板描述信息.

·         Icon: 模板显示图标信息.

·         ProjectType: 用于限定模板适用范围.

·         CSharp: 针对C#语言;

·         VisualBasic: 针对Visual Basic语言;

·         JSharp: 针对J#语言;

·         Web: 针对Web项目,如果ProjectType = web, 那么可以通过ProjectSubType配置节中设置对应的语言范围。

·         TemplateContent - 包含了此压缩包(zip)中包含模板文件的元数据描述信息

·         ProjectCollection: 用于定义包含多个项目的模板文件,其子节点是模板中包含的多个项目文件。

·         Project: 用于列举一个项目中文件清单,如果是文件项请使用<ProjectItem>配置节,如果是子文件夹请使用<Folder>配直节;

·         References: 用于表示此模板文件中需要包含的默认引用;

·         ProjectItem: 用于表示模板文件中文件项,如:.aspx, .cs文件;

·         CustomParameters: 用于设定用户自定义的动态替换的占位符信息。

·         WizardExtension - 用于设置模板向导扩展对应的程序集及对应的操作类.

·         WizardData - 这里中间包含的内容将作为替换值$wizardData$的替换信息.

这篇文章将着重关注TemplateData, TemplateContent两个配直节,WizardExtension和WizardData在此文章中并不进行涉及,我将在我以后文章中着重介绍后面两个配置节。

建立项目模板:

在我原来那篇介绍在VS 2003平台下建立模板的文章,许多使用者会发现那其实是一个蛮复杂的过程。但是现在在VS2005的平台下,这个复杂的过程变成了5个间的步骤:

·         先正常的建立一个项目;

·        在项目中添加对应的文件(按照你需要形成的模板具有哪些文件的需求。)

·        保存所做的改动;

·         从菜单中选择“文件”-> “导出模板”;

·         导出模板向导会启动,并一步一步的指导用户完成模板的建立和安装。

【注意】:有些用户可能从“文件”菜单中看不到“导出模板”的子菜单。你可能需要通过以下步骤进行添加:

·         鼠标右击VS2005的菜单栏空白处,然后选择“自定义...”;

·         然后选择“命令”选项卡;

·         在左侧的栏目中选择“文件”,然后右侧会列举所有“文件”菜单下的子菜单项;

·         然后选择“导出模板...” 菜单然后拖拽到左侧“文件”菜单上。

好了,我们现在开始着手建立模板,首先我们建立一个web网站,然后中间添加了一些模板中需要包含的文件内容,具体的文件格式在资源管理器中查看是图2的样子。

图2

现在我们就建立基于以上面这个web项目的模板。

·         首先点击“文件”菜单,然后选择“导出模板...”;

·         然后就会弹出如图3所示的模板导出向导。

图3

·         按照如下步骤进行选择:

·       首先选择“Project Template”单选框,然后系统会列举当前所有的项目,我们现在就一个网站项目(web application)所以默认会选择这个网站项目;

·       然后模板对应的语言,如:C#, Visual Basic, J#;

·         点击下一步;

·         然后选择模板在对话框中显示的信息,如图4所示:

图 4

·         需要选择的项有:

·         Template Icon (模板图标) - 这个是现实在选择模板的图标文件;

·         Template Name (模板名称)- 针对<TemplateData>配置节中的<Name>子配置节,显示模板的名称;

·         Template Description (模板描述)- 针对<TemplateData>配置节中的<Description>子配置节,显示模板的说明信息;

·         Automatically import the template into Visual Studio (自动在Visual Studio中导入自定义模板) - 如果这个选择了这个选项的复选框,那么生成的模板将被自动拷贝一份到你在Visual Studio中设置的自定义模板存放路径,这样在添加新的项目时就可以选择对应的项了;

·         Display an explorer window on the output files folder (自动打开生成的模板文件所在目录)- 自动打开生成的模板文件所在的目录。

·         点击“完成”按钮.

生成文件项模板:

Steps 生成文件项模板的过程和项目模板的过程基本相似,这里仅仅对不同的地方进行描述,我们以导出CompanyRegistrationInfo类文件为例:

1、同样是先选择导出的模板类型,这里需要选择文件项模板(Item Template),并选择需要导出项所在的项目,及适用的语言:

图 5

然后从列举的文件列表中选择需要到处模板的文件,比如我们这里选择CompanyRegistrationInfo.vb,

由于CompanyRegistrationInfo.vb和CompanyRegistrationInfo.aspx的文件具有关联关系,那么在导出的时候CompanyRegistrationInfo.aspx也会被作为模板的一部分进行导出,如图6所示:

图 6

然后要选择一下导出文件项模板需要的引用,这个选择过程在“项目模板”的过程中是没有的,因为项目本身可以通过bin文件中的依赖关系进行自动的辨别,但是针对项目中的某一项的依赖项系统将无法进行辨别,这样就需要人工选择。

使用项目或者文件项模板:

好了,有了模板就要使用它了,如何使用自定义的模板呢?

没啥特别的步骤,你在添加新项或者新的项目时就可以从“我的模板”中显示自定义的模板项,如图8、图9所示:

图8

图 9

来源:http://blog.csdn.net/vividboy/archive/2009/03/20/4006369.aspx

转载于:https://www.cnblogs.com/qq419524837/articles/1621050.html

通过Visual Studio 2005的项目模板来加速开发过程相关推荐

  1. ajax control toolkit vs2013,如何将Ajax Control Toolkit控件安装到Visual Studio 2005工具箱

    摘要:如何将 Ajax Control Toolkit 控件安装到 Visual Studio 2005 工具箱 How to Install Ajax Control Toolkit for Vis ...

  2. 将 Web 项目从 Visual Studio .Net 2002/2003 转换到 Visual Studio 2005 的分步指南

    本页内容 转换注意事项 第一部分:准备要转换的 Visual Studio .Net 2002/2003 Web 项目 第二部分:迁移您的 Web 项目 第三部分:完成迁移的迁移后步骤 第四部分:其他 ...

  3. Visual Studio 2005 Web Application Projects 项目Cool的地方

    Visual Studio 2005 Web Application Projects 使用了跟 Visual Studio 2003 同样的Web编程模型,同时根据Visual Studio 200 ...

  4. Visual Studio 2005 IDE 技巧和窍门

    发布日期: 2007-02-26 | 更新日期: 2007-02-26 James Lau Microsoft 项目经理 适用于: Microsoft Visual Studio 2005 摘要:Vi ...

  5. Visual studio 2005如何实现源码管理

    转自CSDN Visual studio 2005如何实现源码管理(Visual Studio .Net团队开发) 目录: 〇. 摘要 一. 开发前的准备 二. 创建空的SourceSafe数据库 三 ...

  6. Visual Studio 2005常用插件搜罗

    Visual Studio 2005 为我们带来了新的编程体验,提供了从需求分析到最终测试整个软件生命开发周期的解决方案. 但是,我们也可以看到一直以来围绕着Visual Studio有许多各种功能的 ...

  7. [翻译]使用C#创建SQL Server的存储过程(Visual Studio 2005 + SQL Server 2005)

    原文地址:http://www.dotnetbips.com/articles/70eff218-3da0-4f6f-8f8d-eeea65193f2c.aspx[原文×××] [翻译]使用C#创建S ...

  8. 让Visual Studio 2005 Team Foundation Server支持Wss3

    公司的TFS2005开发了若干基于moss2007的产品.由于TFS2005是基于Wss2.0的,导致在使用builder时有些项目编译不过,可能是需要调用Wss3.0的东西吧.而一些第三方的插件都是 ...

  9. 利用Visual Studio 2005的自动化测试工具来做数据导入

    * reference link: http://www.bentan.cn/Blog/Lists/Posts/Post.aspx?ID=3 1     引言 1.1         研究目标 在我们 ...

最新文章

  1. 关于开源网管软件选型的几点思考
  2. 语义分割--Attention to Scale: Scale-aware Semantic Image Segmentation
  3. Github无法加载或不显示图片问题
  4. 【转】ASP.NET验证控件详解(非空验证,比较验证,范围验证,正则表达式,自定义验证)...
  5. 单片机汇编编程300例_pic单片机编程串烧,pic单片机汇编语言讲解下篇
  6. Canopy聚类算法分析
  7. oracle数据库的select,Oracle数据库--基本的select语句
  8. 虚拟Python环境可以这样创建
  9. 怎么看铜皮属性_阻抗匹配怎么做 及阻抗匹配的作用。
  10. 2021 年 Java 开发者生产力报告
  11. Linux声卡驱动框图
  12. 29.变量的生命周期
  13. 如何控制写入文件大小java_写入文本文件时如何更改字体大小 - java
  14. 唯众高职人工智能技术应用专业解决方案
  15. 支持ldap的邮箱服务器,U-Mail邮件系统LDAP同步邮箱地址簿教程
  16. 地平线4显示与服务器通讯发生错误,地平线4加载失败发生不明错误的解决方法 - 系统家园...
  17. 用PhotoShop快速给证件照排版
  18. 计算机网恢,电脑附身
  19. 市场调研报告-全球与中国燃油泄漏检测设备市场现状及未来发展趋势
  20. 使用 FFmpeg(bilibili视频blv合成mp4)

热门文章

  1. [转]Supporting OData Query Options in ASP.NET Web API 2
  2. 4、数据类型二:Lists
  3. 生活只是需要一种积极的态度
  4. python输出日期的模版_python按日期区间生成markdown日记模板
  5. matplotlib中文乱码
  6. SpringBoot使用Gradle构建war包
  7. 一款免费好用的代码在线比较工具
  8. 区块链项目-Lisk
  9. 企业大数据运用实战案例分享
  10. jquery 常用属性和函数(part I)