Skip to main content
 首页 » 编程设计

c#之在静态类 C# ASP.NET Web 窗体中调用静态方法

2024年01月28日24duanxz

我在 App_Code 文件夹中放置了一个静态类 TestClass。该类包含一个静态方法 TestMethod。从 Default.aspx.cs 通过 Button_Click 方法,我试图调用 TestMethod。 - 测试 = TestClass.TestMethod()。 这给出了错误:“TestClass”由于其保护级别而无法访问。

感觉静态类和 _Default 类应该放在一个公共(public)命名空间中,但这会“排除” Default.aspx 控件引用。

我做错了什么?

请您参考如下方法:

您需要将 TestClass 声明为公共(public):

public static class TestClass 
{ 
    public static SomeType TestMethod() 
    { 
    } 
} 

类型的默认可见性是internal,类型定义的成员是private。 App_Code 文件夹被编译到它自己的程序集中,这与编译后面的代码时创建的程序集不同。 internal 类型不能在程序集之间共享(这不是 100% 正确,但在这种情况下是正确的),因此你会遇到这个问题。