0

我刚刚创建了一个 Hello World 来测试它:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Helloworld1
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Hello World!");
            Console.ReadLine();
        }
    }
}

无论我构建什么,我都会遇到相同的错误:

Error   1   Newline in constant AssemblyInfo.cs 11  28  Helloworld1
Error   2   Unrecognized escape sequence AssemblyInfo.cs    13  46  Helloworld1
Error   3   Syntax error, ']' expected  AssemblyInfo.cs 36  43  Helloworld1
Error   4   ) expected AssemblyInfo.cs  36  43  Helloworld1

注意行号。这段代码没有 36 行!
有人可以告诉我发生了什么事。(而且,是的,我已经关闭并重新打开了我的 Visual Studio 2010 Pro。)

4

5 回答 5

3

如果您编辑程序集属性(项目属性->程序集信息\)并在描述等任何字段中输入无效字符(例如反斜杠 ( )),则可能会发生这种情况。

你得到一个错误,好像它没有保存,但它确实 - 当你尝试编译时这会导致问题。

只需在 Properties 文件夹中打开 AssemblyInfo.cs,VS 就会对有问题的字符进行红色标记,将其删除,如果红线消失,你就可以开始了。

IDE 中的问题示例

于 2013-10-05T21:24:23.883 回答
2

在 VS2012 中创建新项目时,我总是从 AssemblyInfo.cs 文件中得到编译错误。问题似乎总是换行。

[assembly: AssemblyCompany("
            ")]
[assembly: AssemblyProduct("Html5Testing")]
[assembly: AssemblyCopyright("Copyright © 
             2014")]

我手动删除换行符并解决了问题。

我也搜索了这个,令人惊讶的是,我找不到太多人面对它。这让我觉得这可能是我本地版本的 VS 的设置。

于 2014-11-17T09:01:55.477 回答
2

每个 Visual Studio 项目的 Properties 文件夹中都包含一个名为 AssemblyInfo.cs 的额外文件。打开它,你会发现有些地方不太对劲。

如果您不确定,您可以删除它 - 您的项目不需要运行它,尽管它可能很有用。

于 2013-10-05T21:12:33.183 回答
0

检查 AssemblyInfo.cs 文件 - 它位于 Properties 文件夹中。错误就在那里。

于 2013-10-05T21:11:33.630 回答
0

检查您的注册表项

HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows NT\CurrentVersion\RegisteredOrganization 

并确保它具有您的组织名称或为空白。

我遇到了类似的问题,每次我开始一个新项目时,我的 assembly.cs 文件中都有换行符,我必须删除这些换行符。在那个 reg 键中,我发现我有一长串空格。

于 2015-06-26T15:26:42.960 回答