Del*_*rin 1 c# asp.net webmethod
我试图找出一种方法,我可以从另一个ASPX Code Behind页面调用Web方法(位于aspx页面后面的代码中作为公共静态方法).
这是Page A.aspx背后的代码
public partial class PageA : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
// other code not relevant is here
}
[WebMethod(true)]
public static string GetStringInfo()
{
// do some stuff here to build my string
// return string
}
}
Run Code Online (Sandbox Code Playgroud)
在页面B上,我需要能够在页面加载或其他事件期间调用GetStringInfo()来获取信息.GetStringInfo()相当复杂,并且出于我无法控制的原因,无法将其移动到其他地方或目前重建.
如何从其他页面的代码中使用上面的Web方法?
我已经尝试实例化其他页面(PageB)的副本,例如:
public partial class PageB : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
PageA page = new PageA();
page.GetStringInfo();
}
}
Run Code Online (Sandbox Code Playgroud)
这里的问题是因为它是动态编译的,所以我没有一个简单的命名空间来引用和访问.我试过添加一个,它忽略了它.
该项目位于.net 3.5,C#,是一个网站项目(不是Web应用程序).
任何帮助表示赞赏!
如果GetStringInfo方法是静态的,则不需要PageA调用它的实例:
public partial class PageB : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
string info = PageA.GetStringInfo();
}
}
Run Code Online (Sandbox Code Playgroud)