私の目標は、ユーザーが注文ヘッダーと詳細データを入力し、ボタンを1回クリックするだけですべてを保存できるようにすることです。これにより、保存はすべてまたはまったく行われません。
例えば:
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>
このページには、CustomerIdとCommentsの編集フィールドを含むFormViewコントロールがあり、ラインアイテムを追加できるネストされたグリッドビューまたはリストビューもあります。FormViewおよびgridviewコントロールは、ほとんどの場合、独立したデータソースコントロールにリンクされます。私がしたいのは、ユーザーがヘッダー情報とラインアイテムを入力し、画面の下部にある[保存]をクリックすることです。
これは、LinqDataSourceまたはObjectDatasourceオブジェクトを使用しても可能ですか?もしそうなら、ボタンを1回クリックするだけで2つ以上のテーブルにヒットするマスター/詳細スタイルの挿入でこれを行う方法を示す良い例を教えていただけますか?前もって感謝します。
[編集]
フィードバックを確認し、このテーマについて調べた結果、データソースコントロールはこの仕事には不適切なツールであると結論付けました。彼らはこのように歩行者のような事件を実際に扱うことができないので、それは本当に彼らの有用性を私見に疑問視します。新しい方法についてはこれだけです...