解决编译器错误CS1519:类,结构或接口成员声明中的无效标记','

问题描述:

我正在使用Web应用程序项目文件的ASP .NET 2.0网站,因此编译为dll而不是部署源代码与旧式Web站点项目一样。解决编译器错误CS1519:类,结构或接口成员声明中的无效标记','

当我的测试服务器(Windows Server 2003 R2,IIS6)运行在网站的根目录时,该网站正常工作。不过,我需要在虚拟目录下运行它。当我切换到的是,我得到以下错误在浏览任何网页的站点

CS1519:无效令牌“”类,结构或接口成员声明

错误消息进入告诉我行号和代码文件,但代码文件位于Temporary ASP .NET文件夹下,当我尝试找到它时,它不在那里。

因此,我无法确定哪个页面导致问题,尽管我怀疑它可能是母版页,如果在所有页面上发生此错误。有没有其他人看过这个或找到解决方案?

原来,这个问题与继承虚拟层次结构中高于我的站点的配置设置有关。

该站点使用一个自定义配置文件,其属性在配置文件的system.web,profile,properties下定义。其中一个属性的类型是在“Namespace.ClassName,AssemblyName”格式中指定的。

当我从最后删除“,AssemblyName”时,问题自行解决,因为我摆脱了无效令牌的逗号。

我只能假设,当ASP .NET在运行时编译页面时,它一定也编译了配置文件类,并在代码生成过程中使用配置文件中的属性定义。

听起来好像你还没有在IIS中将虚拟设置为应用程序,或者它运行的是ASP.NET的错误版本(即1.1,当它应该是2.0.blah)。

虚拟应该在IIS视图中具有cog图标,并且在属性窗格中必须具有应用程序名称。

namespace Rectangle 
{ 
    class Name 
    { 
     int length1; 
     int width1; 
     int sum; 

     Console.Write("Enter the length: "); 
      length = int.Parse(Console.ReadLine()); 

     Console.Write("Enter the width: "); 
      width = int.Parse(Console.ReadLine()); 

     sum = length1* width1; 

     Console.WriteLine($"Sumis {sum}"); 

    } 
} 
+0

至[审阅](https://*.com/review/low-quality-posts/18801350) - [一个唯一的代码的应答是不低质量(HTTPS://meta.*的.com /一个/1364007分之358757)。它是否试图回答这个问题?如果不是,则标记为“不是答案”或建议删除(如果在审阅队列中)。 b)技术上不正确? Downvote或评论。 – 2018-02-12 23:07:16