ASP.NET WebForms部署 - 设置已编译的\ bin目录DLL名称

时间:2010-10-01 08:17:10

标签: asp.net

我确信这很简单,但我无法在Visual Studio中找到如何做到这一点。如何在部署应用程序时在\ bin目录中指定DLL名称 - 即使选中“使用固定命名和单页面程序集”选项,它仍会在DLL名称后附加“随机”字符。

2 个答案:

答案 0 :(得分:2)

当您使用-fixednames选项时,aspnet_compiler.exe不会让您命名生成的程序集,或者只能生成一个或几个程序集。

一个名为aspnet_merge.exe的单独合并实用程序使您可以组合和管理编译器创建的程序集。

使用合并工具可以组合: -

  1. 由预编译网站中的ASP.NET(而不是自定义程序集)生成的所有程序集到一个命名程序集中。
  2. 将所有Web UI内容程序集合并为一个命名程序集。
  3. 将Web UI内容程序集组装到网站中每个文件夹的程序集中
  4. Refer this article on MSDN详细了解如何将编译器与合并工具结合使用,以便为输出及其命名提供更大的灵活性。

    注意:使用合并工具仍然不允许您明确命名每个预编译的dll,但它的作用基于上面的选项1/3,为您提供更多的灵活性

答案 1 :(得分:0)

我不确定这可以做到。使用“固定命名”选项只会确保每次发布网站时程序集名称都相同。

您的应用程序的不同子目录中可能有多个具有相同名称的页面/控件(例如somePage.aspx)。如果发布向导没有生成一些随机文件名,那么您将以冲突的程序集名称结束。

您拥有的一个选项是将网站项目转换为Web应用程序项目(see here以获取详细信息)。然后你最终只能在bin文件夹中找到一个DLL。