我試圖找出一種方法,可以從另一個ASPX代碼隱藏頁面中調用Web方法(位於aspx頁面後面的代碼中的公共靜態方法)。從ASPX代碼後面調用Web方法
這是第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
}
}
第B後面的代碼,我需要能夠()在頁面加載或一些其他事件來獲取信息調用GetStringInfo。 GetStringInfo()相當複雜,並且由於我不能控制的原因,無法將其移動到其他位置或目前進行重建。
如何從後面的其他頁面的代碼中使用上面的web方法?
我試過實例其他網頁(網頁B)的副本,如:
public partial class PageB : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
PageA page = new PageA();
page.GetStringInfo();
}
}
這裏的問題是,因爲它是動態編譯的,我沒有一個簡單的命名空間引用和訪問。我嘗試添加一個,並忽略它。
該項目在.net 3.5,C#上,並且是一個網站項目(而不是Web應用程序)。
任何幫助表示讚賞!
它是靜態的,PageA.GetStringInfo稱之爲(); – asawyer
你使用當前的代碼片斷得到了什麼樣的錯誤? – scartag
我得到的問題是它沒有發現PageA即使存在。所以當我嘗試實例化頁面時,它只是要求我爲它生成方法存根,而不是找到其他頁面的類。 – Delebrin