WELCOME Abdennour : Software engineer

Nov 27, 2011

TP: Premiers Pas avec ADO.NET Entity FrameWork


Introduction : 
Entity Framework est un modèle conceptuel de données permettant de raisonner sur une vue conceptuelle et non sur les schémas de stockage des données
Pratique:
1. L’application est composée de deux projets :
* Projet Bibliothèque de Classes(Class Library)(Soit ModelFirst( nom du projet))
*Autre Projet (Console ou WinForm,...)(Projet n°2)
RQ: 1) Ajouter Le project ModelFirst comme élément(Item) dans Projet 2.
        2)Copier le fichier App.config dans Le projet 2
        3) Ajouter au projet 2 La référence :System.Data.Entity
---
A)Création d'Entity DATA Model  :
-Créer le dans le projet Library.



-Création des tables :


Remarque:
       1)Pour Ajouter table : Cliquer Droite dans le milieu de l'interface>>Add>>Entity..
       2) Pour Ajouter Colonne : Cliquer Droite Sur La table >>Add>>Scalar Property.
       3) Pour Que l'id soit incrémenté automatiquement , il faut que : StoreGeneratedPattern=Identity
4.png
         4) Entre Person et Session ,il ya une association 1..*
         5)Entre Session et WorkShop, il y a l'héritage(Worksghop hérite)
      5.png
    6.png


           
B-Générer La Base De Données à partir de modele edmx:

-Régler les paramètres :




           

Voici Le code SQL généré :
-- --------------------------------------------------
-- Entity Designer DDL Script for SQL Server 2005, 2008, and Azure
-- --------------------------------------------------
-- Date Created: 11/27/2011 21:00:14
-- Generated from EDMX file: D:\gl4\sim1\2.Frameworks de Développement\workSpaceDotNet\tp2\premierPas\ModelFirst\ModelFirst\Model1.edmx
-- --------------------------------------------------


SET QUOTED_IDENTIFIER OFF;
GO
USE [Insat];
GO
IF SCHEMA_ID(N'abdennour') IS NULL EXECUTE(N'CREATE SCHEMA [abdennour]');
GO


-- --------------------------------------------------
-- Dropping existing FOREIGN KEY constraints
-- --------------------------------------------------




-- --------------------------------------------------
-- Dropping existing tables
-- --------------------------------------------------




-- --------------------------------------------------
-- Creating all tables
-- --------------------------------------------------


-- Creating table 'People'
CREATE TABLE [abdennour].[People] (
    [Id] int IDENTITY(1,1) NOT NULL,
    [Name] nvarchar(50)  NOT NULL
);
GO


-- Creating table 'Sessions'
CREATE TABLE [abdennour].[Sessions] (
    [Id] int IDENTITY(1,1) NOT NULL,
    [Name] nvarchar(max)  NOT NULL,
    [Minute] int  NOT NULL,
    [PersonId] int  NOT NULL
);
GO


-- Creating table 'Sessions_Workshop'
CREATE TABLE [abdennour].[Sessions_Workshop] (
    [Id] int  NOT NULL
);
GO


-- --------------------------------------------------
-- Creating all PRIMARY KEY constraints
-- --------------------------------------------------


-- Creating primary key on [Id] in table 'People'
ALTER TABLE [abdennour].[People]
ADD CONSTRAINT [PK_People]
    PRIMARY KEY CLUSTERED ([Id] ASC);
GO


-- Creating primary key on [Id] in table 'Sessions'
ALTER TABLE [abdennour].[Sessions]
ADD CONSTRAINT [PK_Sessions]
    PRIMARY KEY CLUSTERED ([Id] ASC);
GO


-- Creating primary key on [Id] in table 'Sessions_Workshop'
ALTER TABLE [abdennour].[Sessions_Workshop]
ADD CONSTRAINT [PK_Sessions_Workshop]
    PRIMARY KEY CLUSTERED ([Id] ASC);
GO


-- --------------------------------------------------
-- Creating all FOREIGN KEY constraints
-- --------------------------------------------------


-- Creating foreign key on [PersonId] in table 'Sessions'
ALTER TABLE [abdennour].[Sessions]
ADD CONSTRAINT [FK_PersonSession]
    FOREIGN KEY ([PersonId])
    REFERENCES [abdennour].[People]
        ([Id])
    ON DELETE NO ACTION ON UPDATE NO ACTION;


-- Creating non-clustered index for FOREIGN KEY 'FK_PersonSession'
CREATE INDEX [IX_FK_PersonSession]
ON [abdennour].[Sessions]
    ([PersonId]);
GO


-- Creating foreign key on [Id] in table 'Sessions_Workshop'
ALTER TABLE [abdennour].[Sessions_Workshop]
ADD CONSTRAINT [FK_Workshop_inherits_Session]
    FOREIGN KEY ([Id])
    REFERENCES [abdennour].[Sessions]
        ([Id])
    ON DELETE NO ACTION ON UPDATE NO ACTION;
GO






-- --------------------------------------------------
-- Script has ended
-- --------------------------------------------------







1 comment: