我有一个生产系统和测试系统,都运行IIS。在生产系统中,一切运行良好。在测试系统中,我有一个包含站点代码的文件夹的定向副本,该文件夹被设置为虚拟目录。 App_Code文件夹位于根目录中,包含所有.cs文件。在测试中运行相同的站点时,我得到了一个
Server Error in '/' Application.
--------------------------------------------------------------------------------
Parser Error
Description: An error occurred during the parsing of a resource required to service this request. Please review the following specific parse error details and modify your source file appropriately.
Parser Error Message: Could not load type 'SPTasks.master'.
Source Error:
Line 1: <%@ Master Language="C#" inherits="SPTasks.master"%>
Line 2: <html>
Line 3: <head runat="server">
Source File: /SPTasks/master.master Line: 1
知道为什么这会进入测试而不是生产?代码是否因某些原因而无法编译?
谢谢!
答案 0 :(得分:1)
有些评论询问了MVC,但这看起来像WebForms应用程序 - 如果我错了,请纠正我?在过去,如果应用程序尚未编译,我已经看到了这个错误。你提到你一次一个地复制文件。你真的编译了应用程序吗?如果bin文件夹中没有包含SPTasks.master.cs
类的编译代码的dll,则会出现此错误。由于您没有使用VS来编译应用程序,因此您需要根据this MSDN article直接从命令行使用csc。
如果你有一个dll,可能值得使用反编译器(Reflector或Jetbrains DotPeek,这是免费的)查看内部,以验证SPTasks.master.cs
类是否存在
要检查的另一件事是,运行该站点的应用程序池配置为.Net Framework版本2.0而不是4.0
答案 1 :(得分:0)
您的IIS网站可能配置错误。 IIS“虚拟目录”与应用程序范围不同。
在IIS管理器中,右键单击应用程序的根目录,然后选择“转换为应用程序”。