У меня есть простое представление сетки (ну, это сейчас), оно заполняется, я могу редактировать его. но когда дело доходит до обновления, я просто не могу заставить его работать.
Следующий код создает сетку, которая ищет пользователей, чье имя начинается с "c" (это часть моей фильтрации, которую я удалил)
Проблема в том, что когда я нажимаю кнопку обновления, она не обновляется. Хранимая процедура вызывается, но все передаваемые ей параметры равны нулю. поэтому база данных не обновляется.
Я знаю, что это простая проблема с простым решением, но я просто не вижу ее.
Я пытался использовать ExtractValuesFromCell
в событии onupdating, но получал только нули. Мне пришлось добавить CausesValidation="false"
, потому что без него события обновления даже не вызывались.
Любая помощь приветствуется
<asp:GridView ID="GridView1" runat="server" AllowPaging="True"
AutoGenerateColumns="False" DataSourceID="SqlDataSource3"
DataKeyNames="UserId">
<Columns>
<asp:CommandField ShowEditButton="True" CausesValidation="false" />
<asp:BoundField DataField="UserName" HeaderText="UserName"
SortExpression="UserName" />
<asp:BoundField DataField="MobileAlias" HeaderText="MobileAlias"
SortExpression="MobileAlias" />
<asp:BoundField DataField="DistrictId" HeaderText="DistrictId"
SortExpression="DistrictId" />
<asp:BoundField ReadOnly="true" DataField="UserId" HeaderText="UserId"
SortExpression="UserId" />
</Columns>
</asp:GridView> <asp:SqlDataSource ID="SqlDataSource3" runat="server"
ConnectionString="<%$ ConnectionStrings:REMConnectionString_development_dev %>"
SelectCommand="LoadUser" SelectCommandType="StoredProcedure"
UpdateCommand="UpdateUser" UpdateCommandType="StoredProcedure"
onupdating="SqlDataSource3_Updating">
<SelectParameters>
<asp:Parameter DefaultValue="c" Name="UserName" Type="String" />
</SelectParameters>
<UpdateParameters>
<asp:Parameter Name="UserId" Type="String" />
<asp:Parameter Name="DistrictID" Type="Int32" />
<asp:Parameter Name="UserName" Type="String" />
<asp:Parameter Name="MobileAlias" Type="String" />
</UpdateParameters>
</asp:SqlDataSource>
единственный код в коде позади
protected void SqlDataSource3_Updating(object sender, SqlDataSourceCommandEventArgs e)
{
}
Это там, чтобы я мог зайти в точку останова и проверить параметры, которые все есть, но с нулевыми значениями