Mon but est de permettre à l'utilisateur de saisir des données d'en-tête et de détail et de les sauvegarder en un seul clic , dans une transaction, la sauvegarde est tout ou rien.ASP.Net maître/détail w/Liaison de données aux objets DataSource - insertion multiple avec des principes tout ou rien
Par exemple:
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>
Dans la page que je voudrais avoir le contrôle FormView qui contiendra les champs d'édition pour CustomerId et commentaires, aussi j'aurais un GridView imbriqué ou listview que je pourrais ajouter des éléments de ligne à. Les contrôles FormView et gridview sont très probablement liés à des contrôles de sources de données indépendants. Ce que je veux arriver, c'est que l'utilisateur entre les informations d'en-tête et les éléments de campagne et clique sur Enregistrer une seule fois en bas de l'écran. Est-ce même possible en utilisant les objets LinqDataSource ou ObjectDatasource?
Si oui pourriez-vous me montrer un bon exemple qui montre comment faire cela dans l'insert de style master/detail qui frappe 2 tables ou plus avec un simple clic sur un bouton? Merci d'avance.
[Modifier]
Après avoir examiné les évaluations et la recherche autour de ce sujet, j'ai conclu que les contrôles de source de données ne sont que le mauvais outil pour le travail. Puisqu'ils ne peuvent pas vraiment traiter un cas aussi piétonnier que cela, cela remet vraiment en question leur utilité à mon humble avis. Tellement pour la nouvelle façon ...
Vous devez expliquer plus. ce n'est pas clair ce que vous voulez exactement. – Jeroen
@Jeroen - S'il vous plaît voir mon dernier edit j'espère que cela va clarifier ce que j'essaie d'atteindre. – James