在用户控件asp.net中使用页面方法的替代方法

时间:2011-03-08 07:31:20

标签: asp.net ajax user-controls pagemethods

有没有办法在用户控件中实现页面方法的功能。

感谢任何帮助,谢谢:)

2 个答案:

答案 0 :(得分:5)

最简单的方法可能是将您想要的功能放在网络服务中,然后使用scriptservice属性使其可用。

与页面方法的工作方式非常相似。

相当广泛的例子here

        <asp:ScriptManager>
            <Services>
                <asp:ServiceReference Path="~/MyWs.asmx" />
            </Services>
        </asp:ScriptManager>

然后你可以在JS中调用你的webmethods:MyNamespace.MyWs.MyMethod();

答案 1 :(得分:0)

对我有用的是将WebMethods放在派生自System.Web.UI.Page的自定义类中

public class MyPage : System.Web.UI.Page
{
    [WebMethod]
    public static bool MyMethod(string value)
    {
        return true;
    }
}

然后,只要我有一个包含需要使用该WebMethod的用户控件的页面,就从我的自定义页面类而不是System.Web.UI.Page派生该页面。