使用发布和 .dll .compiled 文件部署 asp.net 网站

Posted

技术标签:

【中文标题】使用发布和 .dll .compiled 文件部署 asp.net 网站【英文标题】:Deploying asp.net website using publish & .dll .compiled files 【发布时间】:2010-02-10 23:47:12 【问题描述】:

当我们发布一个 asp.net 网站时,在“bin”文件夹下创建了 2 种文件类型,.dll 和 .compiled 文件。当我们部署到生产环境时,我们需要复制 .compiled 文件还是只复制 .dll 就可以了?

我知道它现在已经预编译,但是 .compiled 文件是什么?

TIA

【问题讨论】:

【参考方案1】:

我相信您确实需要复制它们,但简单的检查不是一次,看看会发生什么。 From MSDN,它们仅用于在该页面/控件/主控上提供请求时找到正确的程序集:

.compiled 文件

对于 ASP.NET Web 应用程序中的可执行文件,编译器程序集和具有 .compiled 文件扩展名的文件。程序集名称由编译器生成。 .compiled 文件不包含可执行代码。相反,它只包含 ASP.NET 查找适当程序集所需的信息。

部署预编译的应用程序后,ASP.NET 使用 Bin 文件夹中的程序集来处理请求。预编译输出包括 .aspx 或 .asmx 文件作为页面的占位符。占位符文件不包含代码。它们的存在只是为了提供一种为特定页面请求调用 ASP.NET 的方法,以便可以设置文件权限以限制对页面的访问。

【讨论】:

我尝试在我的网站上删除它们,但网站停止工作。

以上是关于使用发布和 .dll .compiled 文件部署 asp.net 网站的主要内容,如果未能解决你的问题,请参考以下文章

引用 DLL 文件未与部署项目一起复制到 bin,导致错误

aspnet_compiler 忽略目标目录并将 dll 留在 Temporary ASP.NET Files 目录中

QT程序部署

使用 3rd 方 DLL 部署 WPF 应用程序

如何使用 ms vc++ 编译器在 netbeans 中构建 dll 文件?

部署 .exe 和依赖的 .dll