Overblog
Editer l'article Suivre ce blog Administration + Créer mon blog

Présentation

  • : Romagny13 - Du .NET,du pur .NET
  • : Cycle de progression Faire (quelque chose qui marche) -> comprendre ce que l’on fait/comment cela marche -> pousser plus loin les notions
  • Contact

Recherche

Articles RÉCents

8 août 2007 3 08 /08 /août /2007 10:42
[ASP.NET Futures] –Dynamic Data Web Site 
Créer tout un site communiquant avec une base de données en quelques clics

Pré requis
Disposer de Asp.Net futures
 
Démarche :
1 - créer un nouveau site > Dynamic Data Website
dynamicdatawebsite1.JPG
2 - ajout connectionstring (dans Web.config)
 
      <connectionStrings>
            <add name="connectionString1" connectionString="Data Source=.;Initial Catalog=ContactDB;Integrated Security=SSPI;" providerName="System.Data.SqlClient"/>
      </connectionStrings>
      <dynamicDataControls showAllTables="false" connectionString="connectionString1">
            <nameMap>
                  <!--
            By default, Dynamic Data Controls use the name of the table as the folder name. This
            can be overridden by using a mapping here.
            Sample mappings:
            <add table="tasks" pathPrefix="~/MyTasksFolder" />
            -->
            </nameMap>
      </dynamicDataControls>
 
J’utilise ici une base SQL Server 2005 trés simple ayant deux tables

dynamicdatawebsite2-copie-1.jpg
3 - Ajout pages Dynamic Data Web Form
il faut absolument que les pages aient le nom exact de la table de la base de données visée :
exemple ici je vais donc créer une page "Contact.aspx" et une page "ContactCategory.aspx"
 dynamicdatawebsite3.JPG
4 - tester ! le code des pages est généré automatiquement !!
on peut consulter,ajouter,modifier,supprimer et filtrer
- un GridView permettant édition et suppression
- des dropdowlists pour filtrer sur chaque relation de la table
- un control pour l'ajout 
Une unique balise est ajoutée dans chaque page
<body>
    <form id="form1" runat="server">
    <div>
        <asp:DynamicAutoData id="AutoData1" runat="server" />
    </div>
    </form>
</body>
 
 dynamicdatawebsite4.JPG 
On dispose également d'un onglet dédié à Dynamic Data dans la boite à outils
dynamicdatawebsite5.jpg 
Court descriptif de ses éléments
 <form id="form1" runat="server">
    <div>
        <!-- DynamicAutoData génére tous les controls (GridView,DropDownLists,... pour la table de la page) -->
        <asp:DynamicAutoData id="AutoData1" runat="server" />
        <!-- DynamicList ne génére qu'un GridView (avec toujours edition,suppression de lignes)-->
        <asp:DynamicList ID="DynamicList1" runat="server" />
        <!-- DynamicInsert permet uniquement insertion de nouveaux enregistrements dans la table de la page-->
        <asp:DynamicInsert ID="DynamicInsert1" runat="server" />
        <!-- DynamicDetails permet édition ,affiche le detail d'un enregistrement -->
        <asp:DynamicDetails ID="DynamicDetails1" runat="server" />
          <!-- DynamicFilter : on indique la clé étrangère automatiquement les valeurs à afficher vont etre cherchées dans la table mère -->
        <asp:DynamicFilter ID="DynamicFilter1" runat="server" ColumnName="ContactCategoryID" />
        <!-- DynamicNavigator est un menu permettant la navigation dans les pages du "site" -->
        <asp:DynamicNavigator ID="DynamicNavigator1" runat="server" />
        <!-- DynamicRssLink ajoute un lien rss à la page -->
        <asp:DynamicRssLink ID="DynamicRssLink1" runat="server" />
    </div >      
    </form>
 
Florent Santin(Azra) parle de Dynamic Data sur son blog
Il a apparemment même fait un webcast (qu’il faudra que je suive :p)
Partager cet article
Repost0

commentaires