我正在使用Web应用程序项目文件的ASP .NET 2.0站点上工作,因此可以编译为dll,而不是像处理较旧样式的Web站点项目一样部署源代码。
该站点在网站的根目录中运行时,在我的测试服务器(Windows Server 2003 R2,IIS6)上可以正常运行。但是,我需要在虚拟目录下运行它。当我切换到该页面时,浏览到站点中的任何页面时都会收到以下错误
CS1519:类,结构或接口成员声明中的无效令牌“,”
该错误消息继续告诉我行号和代码文件,但是代码文件位于Temporary ASP .NET files文件夹下,当我尝试查找它时,它不存在。
因此,尽管我怀疑它可能是母版页(如果在所有页面上都发生此错误),但我无法确定是哪个页面导致了问题。有没有其他人以前见过此事或找到了解决方案?
事实证明,问题与继承虚拟层次结构中我上面站点的配置设置有关。
该站点使用自定义配置文件,其属性在配置文件中的 system.web、配置文件、属性下定义。属性之一的类型以“Namespace.ClassName, AssemblyName”格式指定。
当我从末尾删除“,AssemblyName”时,问题自行解决,因为我删除了作为无效标记的逗号。
我只能假设,当 ASP .NET 在运行时编译页面时,它也必须编译配置文件类,并在代码生成期间使用配置文件中的属性定义。