Cross FormView字段更新

时间:2016-02-28 15:18:59

标签: c# asp.net sqldatasource

我有一个带有两个C#的ASP.NET页面(FormView codebehind),这两个SQL两个绑定到相同的底层SQLDataSource表,但UpdateCommand个对象提供表单是不同的,因为我需要两个不同的SQLDataSource。 当我通过它SQLDataSource“更新”第二种形式时会出现问题,这种形式的字段会更新,而第一种形式的字段则不会。我试图强制绑定到第一个表单的Select()对象用<asp:FormView ID="_fvData1" runat="server" DataKeyNames="id" DataSourceID="_sdsData1" DefaultMode="Edit" Width="100%"> <EditItemTemplate> <asp:TextBox ClientIDMode="Static" CausesValidation="true" ID="_txtData1" runat="server" Text='<%#Eval("data1","{0:dd/MM/yyyy}")%>' /> </EditItemTemplate> </asp:FormView> <asp:FormView ID="_fvData2" runat="server" DataKeyNames="id" DataSourceID="_sdsData2" DefaultMode="Edit" Width="100%"> <EditItemTemplate> <asp:TextBox ClientIDMode="Static" CausesValidation="true" ID="_txtData1" runat="server" Text='<%#Eval("data1","{0:dd/MM/yyyy}")%>' /> </EditItemTemplate> </asp:FormView> <asp:SqlDataSource ID="_sdsData1" runat="server" ConnectionString="<%$ ConnectionStrings:sos_db %>" ProviderName="<%$ ConnectionStrings:sos_db.ProviderName %>" SelectCommand=" SELECT * FROM table_a WHERE id=@id;" UpdateCommandType="StoredProcedure" UpdateCommand="update_table_a_procedure_a"> <SelectParameters> <asp:QueryStringParameter Name="id" Type="Int32" QueryStringField="id" /> </SelectParameters> <UpdateParameters> <asp:QueryStringParameter Name="id" Type="Int32" QueryStringField="id" /> </UpdateParameters> </asp:SqlDataSource> <asp:SqlDataSource ID="_sdsData2" runat="server" ConnectionString="<%$ ConnectionStrings:sos_db %>" ProviderName="<%$ ConnectionStrings:sos_db.ProviderName %>" OnUpdated="_sdsData2_Updated" SelectCommand=" SELECT * FROM table_a WHERE id=@id;" UpdateCommandType="StoredProcedure" UpdateCommand="update_table_a_procedure_b"> <SelectParameters> <asp:QueryStringParameter Name="id" Type="Int32" QueryStringField="id" /> </SelectParameters> <UpdateParameters> <asp:QueryStringParameter Name="id" Type="Int32" QueryStringField="id" /> </UpdateParameters> </asp:SqlDataSource> 方法更新它的数据,但没有运气。 在我更新第二个表单后,是否可以“强制”第一个表单来更新它自己的字段?

ASP代码:

protected void _sdsData2_Updated(object sender, SqlDataSourceStatusEventArgs e)
{
    _sdsData1.Select(DataSourceSelectArguments.Empty);
}

代码隐藏:

grep -B6 -A1 'CE1([28]\|CE2([-1-17]-[28]' file

0 个答案:

没有答案