Soluzione migliore per insert e visualizzazione campi di dettaglio

venerdì 13 marzo 2009 - 00.55

squilibrio Profilo | Expert

Ciao a tutti, un dubbio/consiglio dettato dalla vostra esperienza


ho visto molti esempi con la gestione automatica degli insert, direttamente nell'HTML con collegamento tra GridView + MultiView + FormView (allego un codice di esempio per capire cosa intendo)


sinceramente io invece preferisco la gestione "tradizionale", ovvero caricare una nuova pagina (o cmq un'area della pagina) con dettaglio del record oppure con l'area di insert (gestendo e creando i sincoli campi textbox, dropdownlist, checkbox....), recuperando dal DB il record (caricandolo magari in un'opportuna classe/entity) e lavorando poi sui singoli campi (proprietà della classe)

questa seconda soluzione mi da un maggior controllo su quello che faccio in quanto la prima soluzione è troppo integrata e "vincolata" alla sua struttura


dubbi:

1) voi cosa ne pensate?? ho scritto fesserie?
2) quale soluzione adottate?


Grazie mille





<asp:ObjectDataSource ID="odsContactPersons" runat="server" DataObjectTypeName="Spaanjaars.ContactManager.BusinessEntities.ContactPerson" DeleteMethod="Delete" InsertMethod="Save" SelectMethod="GetList" TypeName="Spaanjaars.ContactManager.Bll.ContactPersonManager" UpdateMethod="Save" SortParameterName="sortExpression" EnablePaging="True" SelectCountMethod="SelectCountForGetList"></asp:ObjectDataSource>


<asp:MultiView ID="MultiView1" runat="server">
griglia MultiView X
<br />
<asp:View ID="View1" runat="server">
<fieldset>
<legend>
<asp:Localize ID="locAddresses" runat="server" meta:resourcekey="locAddressesResource1" Text="Addresses"></asp:Localize></legend>
<asp:Button ID="btnNewAddress" runat="server" Text="Create new Address" OnClick="btnNewAddress_Click" meta:resourcekey="btnNewAddressResource1" />
<asp:GridView ID="gvAddresses" runat="server" AutoGenerateColumns="False" DataKeyNames="Id,ConcurrencyId" DataSourceID="odsAddresses" AllowPaging="True" OnRowUpdating="gvAddresses_RowUpdating" OnRowUpdated="gvAddresses_RowUpdated" meta:resourcekey="gvAddressesResource1">
<Columns>
<asp:BoundField DataField="ContactPersonId" ReadOnly="True" HeaderText="Contact Person Id" meta:resourcekey="BoundFieldResource5" />
<asp:BoundField DataField="Street" HeaderText="Street" SortExpression="Street" meta:resourcekey="BoundFieldResource6" />
<asp:BoundField DataField="HouseNumber" HeaderText="House Number" meta:resourcekey="BoundFieldResource7" />
<asp:BoundField DataField="ZipCode" HeaderText="ZipCode" SortExpression="ZipCode" meta:resourcekey="BoundFieldResource8" />
<asp:BoundField DataField="City" HeaderText="City" SortExpression="City" meta:resourcekey="BoundFieldResource9" />
<asp:BoundField DataField="Country" HeaderText="Country" meta:resourcekey="BoundFieldResource10" />

....

....

....


<asp:FormView ID="fvAddress" runat="server" DataKeyNames="Id" DataSourceID="odsAddresses" DefaultMode="Insert" OnItemInserting="fv_ItemInserting" Visible="False" OnItemCommand="fvAddress_ItemCommand" OnItemInserted="fvAddress_ItemInserted" EnableViewState="False" OnItemUpdating="fvAddress_ItemUpdating" meta:resourcekey="fvAddressResource1">
<InsertItemTemplate>
<span class="Label">Street:</span>
<asp:TextBox ID="StreetTextBox" runat="server" Text='<%# Bind("Street") %>' meta:resourcekey="StreetTextBoxResource1" />
<br />
<span class="Label">HouseNumber:</span>
<asp:TextBox ID="HouseNumberTextBox" runat="server" Text='<%# Bind("HouseNumber") %>' meta:resourcekey="HouseNumberTextBoxResource1" />
<br />
<span class="Label">ZipCode:</span>

ysdemarc Profilo | Expert

Io ho sempre fatto nel secondo modo.. e continuerò a farlo...

mi da maggiore potere e riesco a gestirla meglio..

magari sarà perchè non ho mai compreso come utilizzare realmente i controlli..

ad esempio se tiro fuori i dati con una join il datagrid sembra avere problemi nell'aggiornare i dati...
Vincenzo
Programmatore sbilenco

balfaz Profilo | Expert

diciamo che con il secondo metodo quello del controllo è indubbiamente certo, ma se dobbiamo vedere i tempi di sviluppo con il primo metodo, puoi capire che è tutta un'altra cosa, ovviamente come tutto bisogna capire bene questi controlli che neanch'io riesco ad usare al 100% ma se ci sono perché non provare ad usarli?
Buon Weekend a tutti!!!!

Dove troverai sempre una mano disposta ad aiutarti è nell'estremo del tuo proprio braccio
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5