1

我目前在构建 C# 项目时遇到 CS1061 错误。此错误仅发生在我的代码中非常特定的位置。

错误 CS1061 说明:'type' does not contain a definition for 'member' and no extension method 'name' accepting a first argument of type 'type' could be found (are you missing a using directive or an assembly reference?).

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

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

据我了解,这应该不是问题。该类main被拆分为两个文件,但在编译期间,部分类被合并。

这个问题似乎很相似,但他的解决方案对我不起作用。这两个文件都包含在项目中。单独文件中的 ASP.NET C# 部分类不起作用 CS1061

有任何想法吗?

主文件

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
            }
        }
    } 
}

部分.cs:

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

编辑:似乎它并不特定于在帮助类中调用的方法。在单独的类中构建期间引发了另一个错误。这个类的设置方式与上一个相同,只是它没有额外的帮助类。当部分类的主要部分调用在另一个文件中的部分类中声明的方法时,这个失败。

4

1 回答 1

0

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

于 2013-10-22T16:18:09.117 回答