IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ASP.NET Discussion :

Concept de modèle multi-couche [Débutant]


Sujet :

ASP.NET

  1. #1
    Membre habitué Avatar de Milyshyn76
    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Novembre 2007
    Messages
    440
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 37
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Novembre 2007
    Messages : 440
    Points : 158
    Points
    158
    Par défaut Concept de modèle multi-couche
    Bonjour à tous,

    Je début le développement un site internet ASP.NET 4.5 Visual Studio 2012 en c#. Malgré pas mal de documentation ( ici par exemple ), je n'ai toujours pas compris le concept de modèle multi-couche.

    J'ai créer une bibliothèque de classes ou j'y ai inclus un fichier DAL.cs (en référence à Data Access Layer).

    Il permet notamment de récupérer la chaine de connexion et d'effectuer des requêtes SQL de type INSERT, UPDATE ou DELETE.

    Voici mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    namespace DataAccessLayer
    {
        //Classe qui se charge de la connection à la base de données
        public class DAL
        {
            public string RequeteSQL { get; set; }
            public object ResultatSQL { get; set; }
     
            private static String ConnectionBdd
            {
                get { return System.Configuration.ConfigurationManager.ConnectionStrings["connect_bdd_Reporting"].ConnectionString;}
            }
     
            public void ExecuteRequete()
            {
                string requete = RequeteSQL;
                SqlConnection cn = new SqlConnection(ConnectionBdd);
                SqlCommand cmd = new SqlCommand(requete, cn);
                cmd.ExecuteNonQuery();
                cmd.Dispose();
                cn.Close();
            }
     
        }
    }
    Je ne sais pas si je suis bien partie.

    Quelqu'un peut-il m'aiguiller ?

    Merci à tous.

  2. #2
    Membre du Club
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Février 2006
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 38
    Points : 53
    Points
    53
    Par défaut
    salut

    Il te manque l'appel à la couche (DTO) et l'objet dans lequel tu as encapsulé les valeurs de tes paramètres insert, update, delete.

    Si tu veux avoir plus d'infos sur les différentes architectures possible je te conseil
    Microsoft Application Architecture Guide, 2nd Edition

  3. #3
    Membre habitué Avatar de Milyshyn76
    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Novembre 2007
    Messages
    440
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 37
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Novembre 2007
    Messages : 440
    Points : 158
    Points
    158
    Par défaut
    Merci bien !

  4. #4
    Membre régulier
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juin 2013
    Messages
    47
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2013
    Messages : 47
    Points : 111
    Points
    111
    Par défaut
    Bonjour,

    L'architecture multi couche est une archi très classique dans les appli .net (webform notamment).
    Souvent, les projets embarquent 3 couches principales :
    La DAL (Data Access Layer) qui correspond à la couche qui accède à tes données (base de données, fichiers xml...)
    La BLL (Business Logic Layer) qui correspond à ta couche métier (avec toutes les règles de gestions...)
    Et enfin ta couche présentation donc tout ce qui est affiché à l'utilisateur final (IHM).

    Ensuite, tu peux ajouter d'autres couches (service etc...)

    Comme tu l'auras compris, l'intérêt principal des découper l'application en plusieurs couches est de compartimenter l'application au maximum afin d'optimiser la maintenabilité et les évolutions futures.
    Quoi qu'il en soit, le tuto que tu as cité ci-dessus (celui de Immobilis) est vraiment pas mal pour prendre en main les archi multi couche donc le mieux qu'il y ait à faire c'est créer des projets et comprendre le fonctionnement et l'intérêt.

    Si tu as des points spécifiques sur lesquels tu bloques, n'hésites pas.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Architecture] Conception multi-couches
    Par djflex68 dans le forum Architecture
    Réponses: 42
    Dernier message: 10/06/2008, 13h33
  2. Logiciel de conception de modèle conceptuel et physique
    Par snoopy69 dans le forum Décisions SGBD
    Réponses: 2
    Dernier message: 05/10/2005, 10h30
  3. Architecture multi couches avec librairie borland?
    Par seb_asm dans le forum JBuilder
    Réponses: 4
    Dernier message: 08/06/2005, 10h14
  4. [CONCEPTION] quel modèle de base ?
    Par izioto dans le forum Décisions SGBD
    Réponses: 4
    Dernier message: 23/05/2005, 18h48
  5. Réponses: 7
    Dernier message: 19/10/2004, 19h09

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo