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

时间:2008-12-10 12:22:22

标签: c# .net asp.net

我正在使用一个使用Web应用程序项目文件的ASP .NET 2.0站点,因此编译为dll而不是像使用旧式Web站点项目那样部署源代码。

当站点在网站的根目录中运行时,该站点在我的测试服务器(Windows Server 2003 R2,IIS6)上运行正常。但是我需要在虚拟目录下运行它。当我切换到那个时,我在浏览到网站的任何页面时出现以下错误

CS1519:类,结构或接口成员声明中的令牌','无效

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

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

3 个答案:

答案 0 :(得分:2)

原来问题与在虚拟层次结构中继承我的网站的配置设置有关。

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

当我从末尾删除“,AssemblyName”时,问题自行解决,因为我已经删除了作为无效令牌的逗号。

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

答案 1 :(得分:0)

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

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

答案 2 :(得分:-1)

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}");

    }
}
豫ICP备18024241号-1