C# 编译在分部类中引用方法时失败
本文关键字:引用 方法 失败 编译 | 更新日期: 2023-09-27 18:36:16
我目前在构建 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.cs
. partial.cs
是部分类main.cs
。 main.cs
包含两个类,main
类和helper
类。
当 helper
类实例化 main
类并调用partial.cs
文件中定义的main
类的方法时,将引发错误。
据我了解,这应该不是问题。main
类在两个文件中拆分,但在编译期间,分部类将合并。
这个问题似乎很相似,但他的解决方案对我不起作用。这两个文件都包含在项目中。ASP.NET C# 分部类在单独的文件中不起作用 CS1061
有什么想法吗?
主.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
}
}
}
}
部分.cs:
namespace Price.WS
{
public partial class Main : BaseWebService
{
[WebMethod()]
public DataSet TestMethod()
{
//Stuff
return _TestMethod();
//Stuff
}
}
}
编辑:它似乎不特定于在帮助程序类中调用的方法。在单独类的构建过程中抛出另一个错误。此类的设置方式与上一个类相同,只是它没有额外的帮助程序类。当分部类的主部分调用在另一个文件中的分部类中声明的方法时,此操作失败。
我发现了这个问题。该错误实际上位于具有指向此类的链接的另一个项目中。具有链接的项目不包含指向分部类的链接,因此这些方法不可用。