类型为[类名]的声明中缺少分部修饰符;存在另一个此类型的分部声明

本文关键字:类型 声明 另一个 存在 类名 | 更新日期: 2023-09-27 17:58:41

注意:我发现了一些类似的问题(链接1和链接2),但它们对我没有帮助。

我试图创建一个分部类,但在"主类"上出现以下错误:

Missing partial modifier on declaration of type SomeClass; another partial declaration of this type exists

这些是共同包含类的文件,问题是错误指向的是"主类"而不是分部类。我创建这个分部类的原因是SomeClass.cs文件是与其他人签出的,因为我们(与我一起开发的人)正在使用Team Foundation Server进行源代码管理。

文件:SomeClass.cs

namespace MyNamespace
{
    public class SomeClass
    {
        // Some methods...
    }
}

文件:SomeClass2.cs

namespace MyNamespace
{
    public partial class SomeClass
    {
        // Some methods...
    }
}

类型为[类名]的声明中缺少分部修饰符;存在另一个此类型的分部声明

如果您查看MSDN-Partial Classes and Methods,您可以发现通知:所有部分都必须使用Partial关键字。

只需将两个声明标记为partial

在C#中使用partial时,没有"main"类和"partial"类。partial修饰符只是意味着类可以在多个位置定义,但它仍然是一个单独的类。编译器希望类的所有声明都表示为partial,如果有partial的话,这样做的效果是总是让每个位置都清楚地表明类声明的内容比您当时看到的要多。

如果一个类的任何声明都被标记为partial,那么它的所有声明都需要是partial