返回

ASP.NET开发中的八个最佳实践

时间:2008年10月07日 09:51评论:0阅读:0
欢迎进入.NET社区论坛,与200万技术人员互动交流 >>进入       探索一些在ASP.NET应用程序开发方面的最佳实践,按照这些有用的过程执行就可以改善你的应用程序性能。本文展现了八个最佳实践,你可以在生产模式中开发ASP.NET应用程序时遵循这些最佳实践。 1.使用版本控制你的程序集确保你有一套合适的版本控制策略,在编译时可以使用程序集版本属性应用版本标志,例如:[程序集: 程序集版本(1.0.12.34)] 在构建过程中通常对一个应用程序应用相同的版本号。2.给程序集取一个强壮的名字程序集是版本控制和代码复用的最小单元,包括:◆程序集标识信息(名称,版本等)◆清单和元数据信息◆MSIL代码◆类型和安全信息◆资源具有强壮名称的程序集与它的版本信息、区域信息和数字签名一起可以唯一标识出它。可以使用.NET框架提供了一个实用程序(sn.exe)为你的程序集创建一个强壮的名称,这个实用程序需要你提供一个密钥文件作为参数,结果文件叫做“强名称”文件,你可以使用sn.exe工具从命令行创建强名称密钥文件,如:sn --k MyCompany.snk当你执行前面这条命令时,你会看到如图1所示的内容输出。探索一些在ASP.NET应用程序开发方面的最佳实践,按照这些有用的过程执行就可以改善你的应用程序性能。本文展现了八个最佳实践,你可以在生产模式中开发ASP.NET应用程序时遵循这些最佳实践。1.使用版本控制你的程序集确保你有一套合适的版本控制策略,在编译时可以使用程序集版本属性应用版本标志,例如:[程序集: 程序集版本(1.0.12.34)] 在构建过程中通常对一个应用程序应用相同的版本号。2.给程序集取一个强壮的名字程序集是版本控制和代码复用的最小单元,包括:◆程序集标识信息(名称,版本等)◆清单和元数据信息◆MSIL代码◆类型和安全信息◆资源具有强壮名称的程序集与它的版本信息、区域信息和数字签名一起可以唯一标识出它。可以使用.NET框架提供了一个实用程序(sn.exe)为你的程序集创建一个强壮的名称,这个实用程序需要你提供一个密钥文件作为参数,结果文件叫做“强名称”文件,你可以使用sn.exe工具从命令行创建强名称密钥文件,如:sn --k MyCompany.snk当你执行前面这条命令时,你会看到如图1所示的内容输出。图1.创建一个强名称密钥文件 进入当你在Visual Studio中创建一个项目时,你会看到一个叫做AssemblyInfo.cs的默认文件,你可以使用它指定有关的属性,下面列出了在AssemblyInfo.cs文件中你可以指定的强名称信息。[assembly: AssemblyCulture()] 【程序集:程序集区域()】[assembly: AssemblyVersion(1.0.0.0)] 【程序集:程序集版本(1.0.0.0)】[assembly: AssemblyKeyFile(MyCompany.snk)] 【程序集:程序集密钥文件(MyCompany.snk】3.打乱你的程序集在开始部署程序集之前,最好先打乱它,这样使得反编译更困难,阻止反向工程的尝试,因此,保护你的源代码避免潜在的威胁,此外,打乱程序集可以减少它的大小,从而提升应用程序的性能,在http://www.aspnetpro.com/newsletterarticle/2006/10/asp200610jk_l/asp200610jk_l.asp能找到更多关于打乱程序集的信息。4.将共享程序集部署到GAC你应该将被多个应用程序使用的程序集部署到全局程序集缓存(通常叫做GAC)中,它允许其中的程序集由多个应用程序共享,将程序集部署到GAC中改善了它的载入性能,从GAC载入强命名程序集速度更快,因为它们在安装时就已经校验了,在运行时就不需要再次校验了,.NET框架会跳过校验,运行时总会检查强命名程序集校验它们的完整性,.NET拒绝载入不受信任的或可能捣乱的程序集,记住将程序集安装到GAC之前一定要给它取一个强壮的名字。用GACUtil这个工具将程序集放入GAC,下面的命令将MyProject.dll放入GAC中,因此它就成为了一个全局程序集。GacUtil /i MyProject.dll要卸载GAC中的程序集,可以使用:GacUtil /u MyProject.dll注意即使不将程序集放入GAC你也可以使你的强命名程序集全局可访问,但你需要使用xcopy命令来部署这样的程序集。5.使用恰当的战略进行部署本文讨论两个主要的部署ASP.NET站点的技术:使用copy工具和xcopy工具。也简要地谈到了点击一次部署,其中copy工具是最新的技术,自ASP.NET 2.0开始引入。使用copy工具进行部署下面的步骤完整地显示了从一个站点拷贝到另一个站点的示例。5.1在Visual Studio中选择文件新建站点创建一个名叫SourceWebSite的新站点,如图2所示。图2.创建新站点:从新建站点对话框中选择标准的ASP.NET站点模板5.2然后再创建一个名叫SharedWebSite的站点,你可以使用copy工具将这个站点拷贝到SourceWebSite。5.3接下来,在Visual Studio Solution Explorer中选择SourceWebSite,在它上面点击右键选择Copy Web Site选项,如图3所示。图3.拷贝站点:在SourceWebSite上点击右键,在右键菜单中选择Copy Web Site 进入5.4另外,你也可以选择SourceWebSite然后点击solution explorer 中的Copy Web Site选项,如图4所示。图4.快速站点拷贝5.5你将会看到拷贝站点屏幕,在左边的方格中你将会看到SourceWebSite站点包括的文件。5.6选择SharedWebSite站点(你的远程站点),这样就会弹出打开站点对话框,选择共享的/远程的站点,然后点击打开按钮,如图5所示。图5.打开站点对话框:选择共享的/远程站点然后点击打开.7接下来的屏幕右边方格中显示了共享的/远程站点包括的所有文件,选择所有文件,如图6所示。 图6.选择共享/远程文件:在右边方格中选择所有的远程/共享站点文件5.8接下来,点击Copy Selected Files选项按钮,从共享/远程站点拷贝文件到你的本地站点,如图7所示。图7.拷贝文件:使用拷贝按钮从远程/共享站点拷贝文件到本地站点如果拷贝过程发现文件冲突,它会询问你是跳过文件还是覆盖本地文件,如图8所示。图8.文件冲突解决办法:出现文件冲突是,你有一次机会决定如何处理冲突 进入如果站点的子文件夹名字雷同,你可以选择同步按钮在远程和本地站点之间直接同步文件,如图9所示。图9.同步文件:点击同步按钮在远程和本地服务器之间同步选择的文件这样就完成了站点的拷贝过程。
AS
相关文章
用户评论