预编译的 asp.net 网站报错

Posted

技术标签:

【中文标题】预编译的 asp.net 网站报错【英文标题】:precompiled asp.net website give an error 【发布时间】:2017-05-05 20:09:45 【问题描述】:

我有一个 ASP.Net 网站。作为一个网站,在发布网站后,每个 aspx.cs 文件的 bin 中都有单独的 dll 文件。因此,如果我们想更改实时环境中的任何内容,我们需要再次发布整个网站.如果我尝试替换特定页面dll,那么它会给我一个错误。所以无法找到我只想构建一个应用程序名称的dll,如所有.cs文件的aaaa.dll。有什么方法可以制作有可能。它是一个大项目,所以如果我想从网站制作 Web 应用程序,那么它会让我花费很多。所以如果有任何其他方式,那么它对我来说没问题,或者我如何从我的网站制作单个 dll?欢迎任何建议。谢谢。

【问题讨论】:

这很奇怪。在网站应用程序中,您没有任何 DLL,但 cs 文件是动态编译的。在 web 应用程序中,bin 文件夹中只有一个 DLL,所有的 cs 文件都在那里编译。 msdn.microsoft.com/en-us/library/dd547590(v=vs.110).aspx 你是对的,但是有什么方法可以让它成为单个 dll,这样就可以很容易地在服务器上重新部署他的代码。 如果您有一个网站,您可以将其转换为一个 Web 应用程序。是个痛经,跟着这个演练msdn.microsoft.com/en-us/library/aa983476.aspx 【参考方案1】:

如果您转到File Publish Options,“发布期间预编译”选项下有许多可用设置:

如果您选择“将所有输出合并到单个程序集”,它将按照您的要求创建一个程序集。

【讨论】:

天啊!让我也试试这个。谢谢你节省了我很多时间。再次感谢。 严重性代码描述项目文件行抑制状态错误合并程序集时发生错误:ILMerge.Merge: ERROR!!:在程序集“App_Code”中发现重复类型“aaa”。 aspnet_merge 0 您可以尝试右键单击解决方案并单击“清洁解决方案”吗? 您也可以尝试删除 C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files 下的所有文件

以上是关于预编译的 asp.net 网站报错的主要内容,如果未能解决你的问题,请参考以下文章

在 TFS 2010 构建服务器中预编译 asp.net MVC 网站

如何修复 ASP.NET 错误“文件'nnn.aspx'尚未预编译,无法请求。”?

在 asp .net mvc 5 中预编译剃须刀视图

IIS 中的简单 asp.net 预编译问题

JavaScript预编译流程详解

ASP.NET MVC5 视图预编译