C# 在分部类中引用方法时C编译失败

C# 在分部类中引用方法时C编译失败,c#,compiler-construction,partial-classes,C#,Compiler Construction,Partial Classes,我目前在构建我的C项目时遇到一个CS1061错误。这个错误只发生在我代码中非常特定的位置 错误CS1061说明:“类型”不包含“成员”的定义,并且找不到接受“类型”第一个参数的扩展方法“名称”。是否缺少using指令或程序集引用 我有两个文件,一个main.cs和一个partial.cs。partial.cs是main.cs的一个分部类。main.cs包含两个类,main类和helper类 当helper类实例化主类并调用partial.cs文件中定义的主类的方法时,会引发错误 据我理解,这不应

我目前在构建我的C项目时遇到一个CS1061错误。这个错误只发生在我代码中非常特定的位置

错误CS1061说明:“类型”不包含“成员”的定义,并且找不到接受“类型”第一个参数的扩展方法“名称”。是否缺少using指令或程序集引用

我有两个文件,一个main.cs和一个partial.cs。partial.cs是main.cs的一个分部类。main.cs包含两个类,main类和helper类

当helper类实例化主类并调用partial.cs文件中定义的主类的方法时,会引发错误

据我理解,这不应该是一个问题。主类在两个文件上被拆分,但在编译时部分类被合并

这个问题似乎很相似,但他的决心对我不起作用。这两个文件都包含在项目中

有什么想法吗

main.cs

namespace Price.WS
{
    public partial class Main : BaseWebService
    {
        public Main()
        {
            //CODEGEN: This call is required by the ASP.NET Web Services Designer
            InitializeComponent();
        }

        private DataSet _TestMethod()
        {
            //Stuff     
        }          
    }

    public class Helper: IExchangeable
    {
        public void Test()
        {             
            using (Main main = new Main())
            {
                main.TestMethod();  //This is where the error gets thrown. The compiler doesn't see TestMethod() as a method of main
            }
        }
    } 
}
Partial.cs:

namespace Price.WS
{
    public partial class Main : BaseWebService
    {        
        [WebMethod()]
        public DataSet TestMethod()
        {
            //Stuff
            return _TestMethod();   
            //Stuff
        }          
    }      
}

编辑:它似乎不是特定于在助手类中调用的方法。在另一个类的生成过程中引发了另一个错误。这个类的设置方式与上一个相同,只是它没有额外的helper类。当分部类的主要部分调用另一个文件中分部类中声明的方法时,此方法失败

我发现了这个问题。该错误实际上存在于另一个链接到此类的项目中。具有链接的项目不包含指向分部类的链接,因此方法不可用

在Main类中是否有_TestMethod?我想你是在归还你没有的东西。在基类中,它是私有的,您无法访问它。不要尝试从另一个类调用私有的方法。哎哟,坏拷贝粘贴。这是一个公共方法。另外需要注意的是,Resharper将其视为有效语法。并不是说Resharper什么都知道,但Resharper知道这不像来自另一个类的私有方法调用那样是一个愚蠢的错误。在另一个类的构建过程中会抛出另一个错误-修复不同的编译器错误-有时编译器错误会传播其他错误,这些错误会在根错误修复后消失。