缺少类型声明的部分修饰符[类名称];该类型的另一个部分声明已存在。

5
注意:我找到了一些类似的问题(链接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...
    }
}
3个回答

5

4

只需将这两个声明标记为partial

在C#中使用partial时,不存在“主”类和“部分类”。partial修饰符只是意味着该类可以在多个位置定义,但仍然是一个单一的类。如果任何一个声明为partial,编译器希望所有类的声明都被表示为partial,这使得每个位置都明显存在比你在这个时间看到的更多关于类声明的内容。


感谢,简单而有效 - 即使是解释也是如此。 - Jacky

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

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接