none
intégration de plusieurs projet dans un seul RRS feed

  • Discussion générale

  • bonsoir , 
    je suis en train  de travailler sous un projet qui rassemble plusieurs projet ( 1 projet vb.net + 1 projet C# )
    j'ai importé les dll de chaque projet , et j'ai fait les import nécessaire (dans le projet vb , j'ai importé de dll du projet C# , et vice-versa)

    le problème c'est que lorsque j'ai besoin d'un form dans un projet , ce dernier n'est pas affiché 

    pour etre un peu clair 

    le projet C# s'appel : a (il contient 3 form ca , cb ,cc) 

    le projet vb s'appel : B (il contient 2 form ba ,bb)

    dans le form ca , j'ai besoin de faire un appel à ba 

    donc normalement je doit faire (dans la partie C#)

    new B.ba

    mais seulement le ba est reconnu 
    c'est à dire lorsque je fait 

    new B.bb

    une erreur s'affiche m'indiquant que le nom de l'espace bb n'est pas reconnu dans le B

    j'ai pas trouvé la solution malgré que j'ai importé tout les dll nécessaire


    • Modifié ZIED.m lundi 22 juillet 2013 02:46
    lundi 22 juillet 2013 02:36

Toutes les réponses

  • Bonjour,

    A première vue, je dirais que votre problème provient des namespaces dans lesquels sont repris vos différents forms. Il est possible que bb soit repris dans un autre namespace que "B".

    Dans Visual Studio, utilisez la vue "Class View" ou l'"object browser" pour rapidement vérifiez cela.

    lundi 22 juillet 2013 07:46
  • merci pour la réponse
    mais comment utiliser l'objet browser ou class view 
    lundi 22 juillet 2013 08:21
  • Dans visual studio (en anglais) :

    Menu > View > Object Browser (F2)

    Menu > View > Other Window > Class view

    Quand vous êtes dans la fenêtre, vous pouvez naviguer dans votre Dll. Si vous naviguez jusqu'à votre class bb par exemple, vous découvrirez le namespace dans lequel elle se trouve. Si vous ne voyez toujours pas, allez dans l'object browser, cliquez sur votre class bb (ou via la barre de recherche) pour afficher l'aide dans la partie inférieure de droite et vous devriez voir "Member of" qui vous donne le namespace complet. Voici un exemple pour la StringBuilder qui se trouve dans le namespace System.Text

    Public NotInheritable Class StringBuilder
              Inherits System.Object
         Member of System.Text
    Summary:
    Represents a mutable string of characters. This class cannot be inherited.

    lundi 22 juillet 2013 08:29
  • oui , en parcourant les dll de chaque projet 
    j'ai découvert que dans le projet C# , il n'a pas importé tout les formes du projet vb.net (il à importer seulement 3 form) 
    je ne sais pas pourquoi , et je doit faire qoui pour importer tout les forms
    • Modifié ZIED.m lundi 22 juillet 2013 09:15 ajout d'une question
    lundi 22 juillet 2013 09:08
  • Que voulez-vous dire par 'il n'a pas importé tous les foms du projet vb.Net' ? Pour qu'un projet puisse utiliser du code d'une autre dll, on lui ajoute une référence. Import (VB)/ Using (C#) est une facilité du langage pour utiliser des classes dans votre code sans devoir indiquer le nom complet.

    Vérifiez si les forms de votre projet en VB sont bien publics. A défaut, ils ne sont pas visibles par une autre assembly (votre projet en C#)

    lundi 22 juillet 2013 09:22
  • désolé  pour retard  , mais oui tout les forms de mon projet vb sont public !!
    lundi 22 juillet 2013 18:35
  • Bonjour,

    Une autre façon simple est de créer une nouvelle solution.

    Puis clic droit sur la solution et choisir ajouter un projet existant

    pointer sur votre projet VB

    refaite la même manipulation en ajouter un projet existant pointant vers votre projet C#

    Dans ce cas là, vous serez sûr d'avoir tous vos projets dans le même Namespace.


    Apprenez à développer en C#

    fred

    mardi 23 juillet 2013 19:03
  • Bonjour,

    Est-ce que vous avez testé les solutions proposées ? Merci de partager avec nous les résultats, afin que d'autres personnes avec le même problème puissent profiter de cette solution.

    Cordialement,


    Aurel BERA, Microsoft
    Microsoft propose ce service gratuitement, dans le but d'aider les utilisateurs et d'élargir les connaissances générales liées aux produits et technologies Microsoft. Ce contenu est fourni "tel quel" et il n'implique aucune responsabilité de la part de Microsoft.

    jeudi 25 juillet 2013 07:22