我的目标是允许用户输入订单标题和详细数据,并在一次交易中通过单击按钮将其全部保存,因此保存全部或全部。
例如:
Tables:
OrderHeader:
Id,
CustomerId,
Comments,
OrderDate,
OrderLine
Id,
OrderId FK => OrderHeader
ProductId,
Quantity
Markup (abbreviated):
<asp:FormView ID="uxFormHeaderInfo" runat="server" DataSourceID="headerDataSource">
<InsertItemTemplate>
<%--Header Fields--%>
.....
<asp:GridView ID="uxDetails" runat="server" DataSourceID="detailsDataSource">
<%-- Markup --%>
.....
</asp:GridView>
<asp:Button ID="uxSave" runat="server" CommandName="Insert" />
</InsertItemTemplate>
</asp:FormView>
在页面中,我有 FormView 控件,它将包含 CustomerId 和 Comments 的编辑字段,我也有一个嵌套的网格视图或列表视图,我可以添加行项目。FormView 和gridview 控件很可能链接到独立的数据源控件。我想要发生的是让用户输入标题信息和行项目,然后在屏幕底部单击一次保存。
这甚至可以使用 LinqDataSource 或 ObjectDatasource 对象吗?如果是这样,您能否指出一个很好的示例,该示例显示如何在主/详细样式插入中执行此操作,只需单击一次按钮即可命中 2 个或更多表?提前致谢。
[编辑]
在查看反馈并围绕该主题进行搜索后,我得出结论,数据源控件只是适合这项工作的错误工具。由于他们无法真正处理像这样行人的案件,因此确实令人质疑他们的有用性恕我直言。新方法就这么多了……