IIS中文件夹转为应用程序后ASP.NET Framework 4.8报错求助
解决IIS文件夹转应用程序后ASP.NET页面无法运行的问题
以下是针对该问题的具体解决方法:
复制必要程序集到子应用bin目录
当文件夹转为独立应用程序后,会创建独立的应用程序域,不会继承根目录的bin文件。需将根项目bin目录中的Microsoft.CodeDom.Providers.DotNetCompilerPlatform.dll(以及对应的xml文件)复制到testfolder的bin文件夹下。如果该组件是通过NuGet安装的,直接从根项目输出目录复制即可。匹配.NET Framework版本设置
在IIS中找到testfolder应用程序,右键选择「高级设置」,确认.NET Framework版本设置为v4.0(对应.NET Framework 4.8),与根网站版本保持一致;同时检查对应应用程序池的.NET版本,确保版本兼容。验证web.config配置(若子应用有独立配置)
如果testfolder下存在独立的web.config,检查是否包含正确的CodeDom配置节点:<system.codedom> <compilers> <compiler language="c#;cs;csharp" extension=".cs" type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.CSharpCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=2.0.1.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" warningLevel="4" compilerOptions="/langversion:default /nowarn:1659;1699;1701"/> </compilers> </system.codedom>若子应用无独立web.config,仍需通过复制程序集到子应用bin目录解决依赖问题。
重新注册.NET Framework到IIS
以管理员权限打开命令提示符,执行以下命令修复IIS与.NET Framework的关联:%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe -i检查应用程序池权限
确保子应用对应的应用程序池身份拥有testfolder目录及bin文件夹的读取权限,避免因权限不足导致程序集加载失败。
内容的提问来源于stack exchange,提问作者BitQuestions
相关产品推荐
相关产品推荐

