ASP: CommandArgument - PullRequest
       7

ASP: CommandArgument

3 голосов
/ 02 мая 2011

Я пытаюсь передать значения внутри повторителя, привязав их к кнопке, и передать их из этой формы в другую форму.Когда я компилирую это, это дает мне ошибку, указывающую

System.FormatException: Input string was not in a correct format.

Кнопка в коде повторителя в form1.aspx:

<asp:Button ID="Button1" runat="server" Text="" CommandName= "TEST"  CommandArgument = '<%# Eval("Parking_ID") + "," + Eval("Parking_Name") %>' />

в form1.aspx.vb Repeater_ItemCommandФункция:

 Protected Sub repeater1_ItemCommand(ByVal source As Object, ByVal e As System.Web.UI.WebControls.RepeaterCommandEventArgs) Handles repeater1.ItemCommand
        If (e.CommandName = "TEST") Then
            Dim commandArgsAccept As String() = e.CommandArgument.ToString().Split(New Char() {","c})
            Dim value As Int32 = commandArgsAccept(0).ToString
            Dim value1 As String = commandArgsAccept(1).ToString

            Response.Redirect("Default2.aspx?Parking_ID=" & value, True)
            Response.Redirect("Default2.aspx?Parking_Name=" & value1, True)


            Session("field4") = value
            Session("field6") = value1


        End If






    End Sub

Есть ли решение этой проблемы?С уважением.

Ответы [ 2 ]

1 голос
/ 02 мая 2011
<asp:Button ID="Button1" runat="server" Text="" CommandName= "TEST"  CommandArgument = '<%# Eval("Parking_ID").ToString() +","+ Eval("Parking_Name").ToString() %>'/>


 Protected Sub repeater1_ItemCommand(ByVal source As Object, ByVal e As System.Web.UI.WebControls.RepeaterCommandEventArgs) Handles repeater1.ItemCommand
        If (e.CommandName = "TEST") Then
            Dim commandArgsAccept As String() = e.CommandArgument.ToString().Split(",")
            Dim value As Int32 = commandArgsAccept(0).ToString
            Dim value1 As String = commandArgsAccept(1).ToString




            Session("field4") = value
            Session("field6") = value1

            Response.Redirect("Default2.aspx?Parking_ID=" & value & "&Parking_Name=" & value1, True)


        End If
0 голосов
/ 06 декабря 2013

Поместите имя ключевого поля базы данных в открытую переменную, чтобы избежать синтаксической ошибки

public string registerKey = "myId";

protected void btnCancel_Command (object sender, CommandEventArgs e)
{
    // With the CommandEventArgs you get the parameters sent
    UpdatePanel2.Update ();
}

<asp: Button ID = "btnCancel" Text = "Cancel" CommandName = "CancelDeposit" OnCommand = "btnCancel_Command" runat = "server" CommandArgument = '<% # DataBinder.GetPropertyValue (Container.DataItem, registerKey)%> ">
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...