C# 从另一个文件C从另一个类调用方法#

C# 从另一个文件C从另一个类调用方法#,c#,.net,methods,call,C#,.net,Methods,Call,我在Feed.aspx.cs中声明了一个名称空间。此命名空间包含一个类,该类包含一个方法: Feed.aspx.cs namespace GetUser { public class MyFeedClass { public string getUserID() { MembershipUser user = Membership.GetUser(HttpContext.Current.User.Identity.Name); HttpContext.C

我在Feed.aspx.cs中声明了一个名称空间。此命名空间包含一个类,该类包含一个方法: Feed.aspx.cs

namespace GetUser
{
public class MyFeedClass
{
   public string getUserID()
   {

       MembershipUser user = Membership.GetUser(HttpContext.Current.User.Identity.Name);
       HttpContext.Current.Session["x"] = user.ProviderUserKey.ToString();
       string test = (string)HttpContext.Current.Session["x"];
       return test;
   }

}
}


现在,我想从MyPage.aspx.cs中调用getUserID()方法。我该怎么做呢?

我想你正在使用Asp.NET

您应该在add_code文件夹中创建一个新类。 将该命名空间和类移动到新创建的类中

然后从Feed.aspx.cs调用它:

GetUser.MyFeedClass myfeed = new GetUser.MyFeedClass();
string result = myfeed.getUserID();

确保在代码隐藏中包含命名空间:

using GetUser;
在MyFeedClass中将公共函数设置为静态函数:

public static string getUserID() {...}
然后在您的aspx.cs页面中,您现在可以尝试执行以下操作:

string userId = MyFeedClass.getUserID();

是,并弹出此错误:找不到类型或命名空间名称“GetUser”(是否缺少using指令或程序集引用?)不要在aspx.cs内声明命名空间和类,请在app_代码内创建新类folder@TudorGafiuc此外你的应用程序将更好地为aspx文件声明你的类。谢谢Carlos,我将在将来发布更多问题,因为我正在尝试为我的许可项目构建一个小型社交网络。干杯@图多加菲乌克。堆积如山的岩石!。回头见;)我尝试了“using GetUser;”,但它显示了相同的错误-“找不到类型或命名空间名称“GetUser”。我用上面的建议解决了这个问题:)无论如何,谢谢!