如何在WebMethod中访问代码隐藏函数?

时间:2012-06-21 04:08:06

标签: c# asp.net web-services webmethod

  

可能重复:
  Accessing code behind functions from WebMethod

我关注了WebMethod,我正在通过Json调用它。它的工作正常。

   [System.Web.Services.WebMethod]
public static string CheckUserName(string userName)
{
    string returnValue = string.Empty;
    try
    {
        string consString = ConfigurationManager.AppSettings["cn"].ToString();
        SqlConnection conn = new SqlConnection(consString);
        SqlCommand cmd = new SqlCommand("UsernameCheck", conn);
        cmd.CommandType = CommandType.StoredProcedure;
        cmd.Parameters.AddWithValue("@username", userName.Trim());
        conn.Open();
        returnValue = cmd.ExecuteScalar().ToString();
        conn.Close();
    }
    catch
    {
        returnValue = "error";
    }
    return returnValue;
}

但是,正如我们所知,我们无法访问静态函数中的页面控件和函数代码。

但是我必须在WebMethod中访问一个代码隐藏功能。即

public void test()
  {
   }

请帮助我如何在webmethod中访问“test”功能。在测试功能中,我使用了两个中继器控制和数据表。

谢谢。

1 个答案:

答案 0 :(得分:0)

我理解你。但你想做的事情不可能那样。

我想,webmethod会返回到页面内的脚本,因此您无法从页面调用另一个实例方法。

您可能会尝试在结果后对同一页面进行回发,然后再次调用test()方法。然后,您将能够刷新转发器和数据表。

另一个解决方案是通过webmethod将转发器作为html返回。