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

VB.NET Discussion :

Vb.net Com+ Et Transaction


Sujet :

VB.NET

  1. #1
    Membre confirmé
    Inscrit en
    Juin 2005
    Messages
    150
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 150
    Par défaut Vb.net Com+ Et Transaction
    Bonjour,

    Je travaille actuellement sur application impliquant l'utilisation de dlls VB.NET enregistrées en tant de composant COM+. Ces composants devront par la suite être utilisés dans une application web en ASP/VbScript.

    Les dlls VB.NET résultent d'un portage d'anciennes dlls VB6. Les Attributs nécessaires pour com+ ont été ajoutés System.EnterpriseServices.Transaction(System.EnterpriseServices.TransactionOption.Required), IISIntrinsics(), ProgID)

    Les composants sont correctement enregistrés dans COM+ ainsi que dans le GAC, et j'arrive bien à instancier mes objets mais je rencontre un problème de transaction, lorsque dans le code de la dll, une tentative de connexion vers une base de données est effectuée. Cette connexion est effectuée grâce au code suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
            With cmdConnexion
                .CommandType = ADODB.CommandTypeEnum.adCmdStoredProc
                .let_ActiveConnection(strChaineConnSysteme)
                .CommandText = "PS_MaProcedureStockee"
                .Parameters.Append(.CreateParameter("@monParam", ADODB.DataTypeEnum.adVarChar, ADODB.ParameterDirectionEnum.adParamInput, 50, Code))
                rsConnexion.CursorLocation = ADODB.CursorLocationEnum.adUseClient
                rsConnexion.Open(cmdConnexion, , ADODB.CursorTypeEnum.adOpenForwardOnly, ADODB.LockTypeEnum.adLockReadOnly)
                .Prepared = True
            End With
    une fois à la fonction let_ActiveConnection(), une exception est levée indiquant que
    La nouvelle transaction ne peut pas s'inscrire dans le coordinateur de transactions spécifiées
    Mes recherches sur internet ne sont pas concluantes, car les solutions proposées n'enlèvent pas l'erreur.
    Je tiens à préciser que le code existant n'est pas de moi, et que je n'ai pas forcément la liberté de le modifier
    Merci d'avance pour toute aide, conseils, retour

    Bonne Journée

  2. #2
    Rédacteur
    Avatar de Nathanael Marchand
    Homme Profil pro
    Expert .Net So@t
    Inscrit en
    Octobre 2008
    Messages
    3 615
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Expert .Net So@t
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2008
    Messages : 3 615
    Par défaut
    Le service MSDTC est il lancé et configuré correctement?

  3. #3
    Membre confirmé
    Inscrit en
    Juin 2005
    Messages
    150
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 150
    Par défaut
    Bonjour,

    Oui il est fonctionnel. De plus, je viens de prendre ce bout de code ( la connexion à la base ) et je me suis fait une autre dlls que j'ai enregistré en Com+, J'ai ajouté cette référence à un projet de test et là ça marche !

    et je n'ai rien configuré de particulier, ni sur mon projet de test ni sur ma dll

    Je ne comprends pas très bien

  4. #4
    Membre confirmé
    Inscrit en
    Juin 2005
    Messages
    150
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 150
    Par défaut
    Bonjour,

    Désolé pour ce retour un peu tardif...

    J'ai finalement trouvé la solution qui n'avait malheureusement (ou heureusement)
    rien de technique. En fait, certains composants compilés n'étaient pas les bons, et ça je ne l'ai appris qu'après quelques heures de prise de tête.

    Désolé pour cette discussion inutile, je ne sais pas si on peut la supprimer, si un modérateur pouvait m'éclairer sur ce point, afin que ce post ne sorte pas dans les recherches futures

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

Discussions similaires

  1. Réponses: 6
    Dernier message: 29/01/2007, 20h46
  2. [VB.NET] Perte de transaction
    Par olbi dans le forum Windows Forms
    Réponses: 1
    Dernier message: 20/06/2006, 20h55
  3. [.NET 2] System.Transactions non trouvé
    Par brousaille dans le forum ASP.NET
    Réponses: 3
    Dernier message: 04/04/2006, 17h06
  4. [VB.Net][2.0] Transaction SQL
    Par NicoNGRI dans le forum ASP.NET
    Réponses: 3
    Dernier message: 15/12/2005, 14h04
  5. favicon developpez net/com
    Par ggnore dans le forum Evolutions du club
    Réponses: 8
    Dernier message: 23/09/2005, 11h23

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