Передача значений элементов управления формы методу страницы ASP.NET - PullRequest
1 голос
/ 03 марта 2011

У меня есть эта функция:

[System.Web.Services.WebMethod]
public static string EditPage(string nodeID)
{
    DataTable dt = new DataTable();
    using (SqlConnection con = new SqlConnection(Global.conString))
    using (SqlCommand cmd = new SqlCommand("contentPageGetDetail", con))
    {
        cmd.Parameters.Add("@ID", SqlDbType.UniqueIdentifier).Value = Global.SafeSqlLiteral(nodeID, 1);
        cmd.CommandType = CommandType.StoredProcedure;
        cmd.ExecuteNonQuery();
        using (SqlDataAdapter da = new SqlDataAdapter(cmd))
        {
            da.Fill(dt);
        }
    }


   return nodeID;
}

Я хочу получить переменные, такие как:

<asp:HiddenField ID="hfNodeID" runat="server" />

или

<asp:RadioButtonList id="rblContentTypesGetAll" OnLoad="rblContentTypesGetAll_Load" runat="server" > </asp:RadioButtonList>

в моей веб-форме, но когда я пытаюсь сослаться на их идентификаторы, они не заполняются автоматически и не могут быть найдены.Что мне не хватает?Это вообще возможно?

Ответы [ 2 ]

4 голосов
/ 03 марта 2011

WebMethod является статическим - он не будет иметь доступа к элементам управления формы.Они не выполняются в контексте страницы - вам нужно получить необходимые значения с помощью сценариев на стороне клиента и передать их.

1 голос
/ 03 марта 2011

Используйте JavaScript для извлечения значений из HiddenField, RadioButtonList и передачи их в качестве параметров в метод EditPage.

...