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 :

[ASP.NET 2.0 et C#] les transactions


Sujet :

ASP.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Octobre 2005
    Messages
    194
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 194
    Par défaut [ASP.NET 2.0 et C#] les transactions
    Bonjour,
    je voudrais savoir comment créer une transaction dans ASP.NET 2.0.
    J'ai deux tables liées par une relation de type many-to-many (donc une troisieme table qui est la table relation). je voudrais créer une transaction pour inserer dans la table parente et la table relation, mais je ne sais pas comment créer cette transact.
    merci d'avance.

  2. #2
    Membre extrêmement actif
    Profil pro
    Inscrit en
    Août 2005
    Messages
    1 240
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 1 240
    Par défaut
    cherche DBTransaction qui est une classe abstraite et tu as sqlTransaction pour sql Server OracleTransaction pour oracle et OleDBTransaction pour le reste.

  3. #3
    Membre confirmé
    Inscrit en
    Octobre 2005
    Messages
    194
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 194
    Par défaut
    Bonjour,
    J'utilise un DataSet typé dans une architecture 3 tiers. Je ne sais pas ou exactement placer le code pour les objets sqlTransaction. J'ai pensé aux classes Partielles, mais comment faire exactement, je ne sais pas.
    merci bien de me guider.

  4. #4
    Membre très actif
    Avatar de jpelaho
    Homme Profil pro
    Consultant ERP
    Inscrit en
    Avril 2006
    Messages
    120
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Consultant ERP
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2006
    Messages : 120
    Par défaut
    Pour une base de données SQL :
    Crée une nouvelle transaction
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SqlTransaction sqlTrans;
    Tu l'initialises
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SqlTrans = sqlConn.BeginTransaction("Ma_transaction");
    Pour tous les traitements que tu vas effectuer sur les données, crée des objets SqlCommand
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SqlCommand sqlCmd = ...
    Que tu associes à la transaction
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SqlCmd.Transaction = sqlTrans;
    Ensuite tu les exécutes
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SqlCmd.ExecuteNonQuery();
    ...
    Si tu arrives à un stade ou tu veux appliquer toutes les modifications à la base de données, tu fais
    S'il ya une exception ou erreur quelconque, tu fais
    Espérant que ca va t'aider

  5. #5
    Membre confirmé
    Inscrit en
    Octobre 2005
    Messages
    194
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 194
    Par défaut
    Bonjour jpelaho (et tout le monde bien sùr)
    Dans les applications WindowsForms en .NET 2003, je fesais exactement ce que tu a fais et décris, mais en .NET 2005 avec des appli WebForms, je ne trouve pas ou mettre le code. En effet, j'utilise un dataset typé, donc il génère automatiquement un objet DataTable et un TableAdapter pour chaque table. Mon problème c'est que je n'ai pas d'objet sqlConnexion car tout est integré dans les objets DataTable et TableAapter. De plus, à l'inverse de .NET 2003, je n'ai pas accés à la propriété "InsertCommand" de l'Adapter (elle n'existe pas) pour lui affecter l'objet transaction.
    Dans quelle couche de mon architecture 3 tiers je dois inserer ce code ?
    le plus logique serait de le mettre dans la couche accès aux données (pour cela je dois utiliser les classe partielles).
    Je vous dis sincerement, je suis completement perdu. à l'aiiiiiiiiiiiide

  6. #6
    Membre très actif
    Avatar de jpelaho
    Homme Profil pro
    Consultant ERP
    Inscrit en
    Avril 2006
    Messages
    120
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Consultant ERP
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2006
    Messages : 120
    Par défaut
    Pour revenir au code donné plus haut il est applicable autant sur .net 2003 que sur 2005 et quelque soit le type d'appli (Web ou Windows)

    J'avoues que je ne comprends plus trop ton problème quand tu parles de classes partielles (c'est pour faire quoi dans ton cas ?)

    As tu pensé à effectuer la transaction à l'aide d'une procédure stockée et l'appeler dans ton code ?

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 28/02/2011, 09h28
  2. C# ASP.NET MVC 1.0 eviter les redondances
    Par blackskiz dans le forum ASP.NET MVC
    Réponses: 5
    Dernier message: 19/04/2010, 11h23
  3. Réponses: 5
    Dernier message: 17/01/2008, 13h18
  4. [ASP.NET] URL fixe pour toutes les pages d'un site
    Par Ant8386 dans le forum ASP.NET
    Réponses: 8
    Dernier message: 20/09/2007, 15h57

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