1
所以下面是我的代碼。我遇到問題的地方是我的綁定文本字段沒有按預期將信息發送回UpdateCommand。如果我用硬編碼文本替換任何@variables,則更新按預期發生。所以如果我用'25'代替@RegID,那麼我的記錄已經成功更新,但是在更新處理時所有其他@variables都是NULL,所以空白。我的錯誤在哪裏?ASP.NET FormView更新失敗
<asp:FormView ID="formView" DataSourceID="Reg" runat="server" DataKeyNames="RegID" AllowPaging="true">
<ItemTemplate>
<h3 style="font-size:14px;"><%#Eval("Org") %></h3>
<table border="0">
<tr class="RowHighlight">
<td>Name:</td><td><%#Eval("Name") %></td>
</tr>
<tr>
<td>Phone Number:</td><td><%#Eval("PhoneNumber") %></td>
</tr>
<tr class="RowHighlight">
<td>Email Address:</td><td><%#Eval("EmailAddress")%></td>
</tr>
<tr>
<td>Address:</td><td><%#Eval("Address") %></td>
</tr>
<tr class="RowHighlight">
<td>Purchase Date:</td><td><%#Eval("MonthOfPurchase") + " " + Eval("YearOfPurchase")%></td>
</tr>
<tr>
<td>Notes:</td><td><%#Eval("Notes") %></td>
</tr>
<tr>
<td><asp:LinkButton ID="btnEdit" Text="Edit Details" runat="server" CommandName="Edit" /></td>
</tr>
</table>
</ItemTemplate>
<EditItemTemplate>
<h3 style="font-size:14px;"><%#Eval("Org") %></h3>
<table border="0">
<tr>
<td>ID</td><td><%#Eval("RegID")%></td>
</tr>
<tr class="RowHighlight">
<td>Name:</td><td><asp:TextBox ID="txtName" runat="server" Width="100%" Text='<%# Bind("Name") %>' /></td>
</tr>
<tr>
<td>Phone Number:</td><td><asp:TextBox ID="txtPhoneNumber" runat="server" Width="100%" Text='<%# Bind("PhoneNumber") %>' /></td>
</tr>
<tr class="RowHighlight">
<td>Email Address:</td><td><asp:TextBox ID="txtEmailAddress" runat="server" Width="100%" Text='<%# Bind("EmailAddress") %>' /></td>
</tr>
<tr>
<td>Address:</td><td><asp:TextBox ID="txtAddress" runat="server" Width="100%" Text='<%# Bind("Address") %>' /></td>
</tr>
<tr class="RowHighlight">
<td>Month Of Purchase:</td><td><asp:TextBox ID="txtMonthOfPurchase" runat="server" Width="100%" Text='<%# Bind("MonthOfPurchase") %>' /></td>
</tr>
<tr>
<td>Year Of Purchase:</td><td><asp:TextBox ID="txtYearOfPurchase" runat="server" Width="100%" Text='<%# Bind("YearOfPurchase") %>' /></td>
</tr>
<tr class="RowHighlight">
<td>Notes:</td><td><%#Eval("Notes") %></td>
</tr>
<tr>
<td><asp:LinkButton ID="btnSave" Text="Save Changes" runat="server" CausesValidation="true" CommandName="Update" /></td>
<td><asp:LinkButton ID="btnCancel" Text="Cancel" runat="server" CommandName="Cancel" /></td>
</tr>
</table>
</EditItemTemplate>
</asp:FormView>
<asp:SqlDataSource ProviderName="System.Data.Odbc" ID="Reg" runat="server"
ConnectionString="DRIVER={MySQL ODBC 3.51 Driver}; SERVER=<SERVER_NAME>; PORT=3306; DATABASE=<DATABASE> UID=<USERID>; PWD=<PASSWORD>; OPTION=3;"
SelectCommand="SELECT * FROM tblRegsitration
WHERE EmailSent=0 ORDER BY Org"
UpdateCommand="UPDATE tblRegsitration SET [email protected],
[email protected],
[email protected],
[email protected],
[email protected],
[email protected]
WHERE ([email protected])" />
你能手動換行的代碼行與文本框,他們切斷,我沒有足夠的聲譽編輯您的帖子。 – Kendrick 2010-07-12 15:35:19
我下次會做得更好。目前問題已解決。謝謝。 – Jeff 2010-07-12 16:24:21