博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
.NET 部署-03Web Deployment项目-02属性页
阅读量:4979 次
发布时间:2019-06-12

本文共 3914 字,大约阅读时间需要 13 分钟。

Web Deployment项目有四个属性页:

  • 编译(Compilation
  • 输出程序集(Output Assemblies
  • 签名(Signing
  • 部署(Deployment

 

编译页(Compilation Page

Web Deployment项目“编译”页对话框如下所示:

下表描述了你可以在“编译”页设置的属性:

设置

描述

输出文件夹

(Output folder)

该设置规定Web站点预编译输出的文件夹。

产生调试信息

(Generate debug information)

该设置在编译时产生.pdb文件。这个设置会更新预编译Web站点配置文件中compilation 元素的值为“true”,即<debug="true"/>

使用IIS元数据路径作为源输出

(Use IIS Metabase path for source input)

该设置规定源Web站点应用程序完整的IIS元数据路径。这个设置相当于aspnet_compiler.exe命令的“-m”选项。例如,元数据路径可能为“/LM/W3SVC/1/ROOT/MyWeb/”,其中,“MyWeb”是为虚拟目录。

如果Web站点包含一个或多个子站点,那么这个设置很有用。在编译期间,编译器会处理目录中的所有文件。若有子站点,就会产生生成错误。因此,为了避免错误,你可以规定正在编译的Web站点的IIS元数据路径,使ASP.NET编译器忽略IIS元数据中定义的任何子站点。若要编译子站点,你必须为每个子站点添加各自的Web Deployment项目。

 

该设置意味着,如果Web网站存在一个或多个虚拟目录,那么需要选择该项。

允许预编译站点以便更新

(Allow this precompiled site to be updatable)

该设置只编译后台文件。在编译后,可以更新ASP.NET Web页面(.aspx和用户控件(.ascx )文件。若不选择该项,则会移除页面和控件的HTML标记,将其编译到程序集输出中。

 

该设置意味着,你是否需要在部署Web站点后,调整页面。

 

输出程序集页(Output Assemblies Page

Web Deployment 项目“输出程序集”页对话框如下所示:

下表描述了你可以在“输出程序集”页设置的属性:

设置

描述

合并所有输出的程序集到一个程序集

(Merge all outputs to a single assembly)

该设置合并所有输出的程序集到一个的程序集。

这个设置相当于aspnet_merge.exe命令的“-o assemblyname”选项。为每个网站Web项目创建一个程序集。

 

该设置意味着,如果Web解决方案包含多个Web站点,那么可以为每个Web站点生成一个程序集。

视为库组件

(Treat as library component)

该设置删除 App_code.compiled 文件,使项目的 App_Code.dll 程序集被添加到Bin目录,而不会与另一个Web站点中的 App_Code.dll 程序集冲突

这个设置等价于“aspnet_merge.exe”命令的“-r”选项。这个设置对生成 .ascx 控件的库很有用。

合并每个目录的输出到它自己的程序集

(Merge each folder output to its own assembly)

该设置会为每个目录创建一个输出程序集,使你在目录级别上更新 Web 站点,而不是整个Web应用程序。

这个设置相当于 aspnet_merge.exe 命令的“-prefix prefixname”选项。

另外,可以在该设置为生成的每个程序集规定前缀名。例如,若规定前缀为“MyCompany”,那么目录的输出程序集名字就成“MyCompany.SubfolderName”。

合并所有的页面和控件到一个的程序集

(Merge all pages and controls to a single assembly)

该设置合并所有页面和用户控件的输出程序集到一个程序集,使你单独更新UI元素。例如,特殊的文件夹,App_CodeApp_WebReferences等会编译到一个单独的程序集。

这个设置相当于 aspnet_merge.exe 命令的“-w assemblyname”选项。

为每个页面和控件创建一个的程序集

(Create a separate assembly for each page and control)

该设置编译每个页面和用户控件到一个的程序集,这个设置不会运行 aspnet_merge.exe,而是 aspnet_compiler.exe 命令的“-fixednames”选项。

注意:用“-fixednames” 选项会禁用编译器的批优化(compiler's batch optimizations),对于大型Web站点,会导致较长的编译时间Web站点。

这个设置对更新已部署的Web站点,进行小粒度的更新(granular updates)很有用。

版本输出程序集

程序集版本

文件版本

(Version Output Assemblies

Assembly Version

File Version)

该设置合并程序集或是文件版本,格式为“0.0.0.0”。这个设置会覆盖在 AssemblyInfo.vb AssemblyInfo.cs 文件中定义的程序集属性。

这个设置相当于 aspnet_merge.exe 命令的“-copyattrs assemblyfile”选项。

 

签名页(Signing Page

Web Deployment项目“签名”页对话框如下所示:

下表描述了你可以在“签名”页设置的属性:

设置

描述

密钥文件位置

Key file location

该设置规定签名程序集的密钥文件的路径。密钥文件由 .NET Framework SDK 包含的 Sn.exe工具产生。

延迟签名

Delay signing

该设置用延迟签名来编译程序集,使程序集在生成后的处理中再签名。

标记程序集为APTCA属性

Mark assemblies with AllowPartiallyTrustedCallers attribute (APTCA)

该设置规定,当标记程序集为APTCA属性后,只有部分信任的代码可以调用强命名程序集。

 

部署页(Deployment Page

Web Deployment项目“部署”页对话框如下所示:

下表描述了你可以在“部署”页设置的属性:

设置

描述

启用Web.config文件节替换

Enable Web.config file section replacement

用一个外部.config文件中匹配节(section)的内容替换Web站点Web.config文件的任意节(section)。该设置使你能够在部署时定义需要向 Web.config写入的元素,另外,提供一种方式,创建部署时需要的配置节(section)。

 

该设置意味着,你可以在部署时,从外部改变Web站点的Web.config文件。

强制匹配节替换

Enforce matching section replacements

该设置的替换,节(section)中的元素数量必须相同。如果元素数量不匹配,那么,生成时就会报错。

该设置可以帮助检查Web.config 文件。

使用外部配置源文件

Use external configuration source file

通过使用configSource 属性,利用引用的.config文件中的元素,替换已存在的节,以更新Web.config文件。

<appSettings
configSource="appSettings.config" />
如果没有选择该设置,那么节会被.config文件中元素全部替换。
这个设置对改变每个生成配置的数据库连接字符串或是Web reference的URL很有用。

为输出文件夹创建IIS虚拟目录

Create an IIS virtual directory for the output folder

用你规定的名字,创建一个指向输出文件夹的IIS虚拟目录。该设置对于立刻测试预编译Web应用程序很有用。

为了避免与其他配置冲突,把虚拟目录名字作为配置名字的一部分,例如,把“MyWeb_Staging”和“MyWeb_Release”作为虚拟目录的名字。

替换已存在的虚拟目录

Replace the existing virtual directory

如果该虚拟目录已经存在,并且正指向一个不同的文件夹,那么,更新元数据,指向当前配置的输出文件夹。

如果没有选择该设置,那么,当虚拟目录路径与输出文件夹不匹配时,就会产生一个错误。

删除App_Data文件夹

Remove the App_Data folder

该设置从Web站点的预编译中删除 App_Data 文件夹。如果你使用数据库连接字符串访问 SQL Server,或是不使用 SQL Server Express和 Access,那么这个设置很有用。

转载于:https://www.cnblogs.com/liuning8023/archive/2010/10/31/2131490.html

你可能感兴趣的文章
TL431的几种常用用法
查看>>
js 经典闭包题目详解
查看>>
在项目中移除CocoaPods
查看>>
【洛谷】CYJian的水题大赛【第二弹】解题报告
查看>>
POJ 1703 Find them, Catch them【种类/带权并查集+判断两元素是否在同一集合/不同集合/无法确定+类似食物链】...
查看>>
L1-5. A除以B【一种输出格式错了,务必看清楚输入输出】
查看>>
Git一分钟系列--快速安装git客户端
查看>>
纵越6省1市-重新启动
查看>>
hive安装以及hive on spark
查看>>
jz1074 【基础】寻找2的幂
查看>>
Wannafly模拟赛5 A 思维 D 暴力
查看>>
【Linux开发】CCS远程调试ARM,AM4378
查看>>
Linux之ssh服务介绍
查看>>
排序:冒泡排序
查看>>
Java中instanceof关键字的用法总结
查看>>
引用类型-Function类型
查看>>
(转)Android 仿订单出票效果 (附DEMO)
查看>>
数据库多张表导出到excel
查看>>
微信小程序去除button默认样式
查看>>
Where does Visual Studio look for C++ Header files?
查看>>