扫雷英雄榜——ASP.NET常见错误及解决方案 王牌8
扫雷英雄榜——ASP.NET常见错误及解决方案
以下“解决方案”中的内容对应的是“错误信息”中内容的解决方法。 1. 编译器错误 CS0005 错误信息 编译器选项“compiler_option”后面必须有参数。 解决方案 有些编译器选项需要参数。如果不传递编译器选项所需的参数,则会生成 CS0005。 2. 编译器错误 CS0013 错误信息 将元数据写入文件“file”时发生错误 —“description”。 解决方案
.NET Framework 公共语言运行库未能发出元数据。请检查以确保路径正确并且磁盘未 满。如果问题仍然存在,可能需要修复或重新安装 Visual Studio 和/或 .NET Framework。 3. 编译器错误 CS0014 错误信息 无法找到所需的文件“file”。 解决方案
编译器需要某个文件,但它不在系统上。请确保路径是正确的。如果该文件是 Visual Studio
系统文件,那么您可能需要修复安装,或者移除并彻底重新安装 Visual Studio。 4. 编译器错误 CS0016 错误信息 未能写入输出文件“file”—“reason”。 1
ASP.NETT从入门到精通
解决方案
编译器未能写入输出文件。检查文件的路径,确保文件存在。如果该位置已经存在一个 以前生成的文件,请确保该文件可写入,并且当前没有进程将该文件锁定。例如,确保在尝 试生成时可执行文件没有运行。 5. 编译器错误 CS0017 错误信息 程序“output file name”定义了不止一个入口点:function。 解决方案
程序只能有一个 Main 方法。 若要解决该错误, 可以删除代码中的所有 Main 方法, 只保留一个, 或者可以使用 /main 编译器选项指定要使用的 Main 方法。 下面的示例生成 CS0017: // CS0017.cs public class clx { static public void Main() { } } public class cly { public static void Main() { } } 6. 编译器错误 CS0019 错误信息 运算符“operator”无法应用在“type”和“type”类型的操作数。 解决方案 二进制运算符所操作的数据类型是该运算符不能处理的数据类型。例如,不能对字符串 2
// CS0017, delete one Main or use /main
扫雷英雄榜——ASP.NET常见错误及解决方案 王牌8
使用 || 运算符。 下面的示例生成 CS0019: // CS0019.cs public class MyClass { [System.Diagnostics.ConditionalAttribute("DEBUG" CS0019 // try the following line instead // [System.Diagnostics.ConditionalAttribute("DEBUG")] public void TestMethod() { } public static void Main() { } } 在本例中, 必须在 ConditionalAttribute 外指定条件逻辑。 只能向 ConditionalAttribute 传 递一个预定义符号。 7. 编译器错误 CS0020 错误信息 被常数零除。 解决方案 表达式在除法运算的分母中使用了字面(不是变量)值零。未定义被零除,因此无效。 8. 编译器错误 CS0021 错误信息 无法将带 [] 的索引应用于“type”类型的表达式。 解决方案 || "TRACE")] //
试图通过索引器访问不支持 索引器(C# 编程指南) 的数据类型的值。 当您试图在 C++ 程序集中使用索引器时,可能会遇到 CS0021。在这种情况下,请用 DefaultMember 属性修饰 C++ 类,以使 C# 编译器知道哪个索引器是默认的。下面的示例 生成 CS0021。 3
ASP.NETT从入门到精通
此文件编译成一个 .dll 文件(DefaultMember 属性被注释掉)以生成此错误。 // CPP0021.cpp // compile with: /clr /LD using namespace System::Reflection; // Uncomment the following line to resolve //[DefaultMember("myItem")] public ref class MyClassMC { public: property int myItem[int] { int get(int i){ } }; 下面是调用此 .dll 文件的 C# 文件。此文件试图通过索引器访问该类,但由于没有成 员被声明为要使用的默认索引器,所以生成错误。 // CS0021.cs // compile with: /reference:CPP0021.dll public class MyClass { public static void Main() { My