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 :

Translation de VB.net vers C#


Sujet :

ASP.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre expérimenté
    Avatar de zooffy
    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Août 2004
    Messages
    3 895
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chef de projet MOA
    Secteur : Bâtiment

    Informations forums :
    Inscription : Août 2004
    Messages : 3 895
    Par défaut Translation de VB.net vers C#
    Y en a qui vont être content, en ce joli mois d'Aout (en fait tout pourri en Bretagne !!!) je me lance dans une opération sympa mais délicate : je traduis tout mon système de site de VB vers C# et à la main les 10 000 lignes de code !!!

    LuteceFalco, si tu m'entends .....


    Bon alos abordond le premier souci que je rencontre et pour lequel je trouve pas de solution, les traducteurs de code me remontent une erreur et pas de solution.

    J'ai ça en VB :
    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
            Private _table As DataTable
            ''' <summary>
            ''' Resultat de la dernière requête tabulaire.
            ''' </summary>
            ''' <value></value>
            ''' <returns></returns>
            ''' <remarks></remarks>
            Public Property Table() As DataTable
                Get
                    Return _table
                End Get
                Set(ByVal value As DataTable)
                    _table = value
                End Set
            End Property
    Lorsque je mets ça en C# :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    /// <summary>
            /// Résultat de la dernière requête tabulaire
            /// </summary>
            private datatable _table;
            private datatable Table
            {
                get { return _table; }
                set { _table = value; }
            }
    il me mets pas en bleu clair le "datatable".
    J'en déduis donc que le mot n'est pas connu de C#
    Donc double soucis dans mon exposé : DataTable est il réservé à VB, si oui, qu'elle est sa traduction en C# ?
    Est ce que, indépendement de ce mot qui coince, la translation est bonne ?
    J'ai une bonne centaine de Property à traduire, je voudrais partir sur des bonnes bases.

    Merci d'avance.

  2. #2
    Modérateur
    Avatar de DotNetMatt
    Homme Profil pro
    CTO
    Inscrit en
    Février 2010
    Messages
    3 611
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : CTO
    Secteur : Finance

    Informations forums :
    Inscription : Février 2010
    Messages : 3 611
    Billets dans le blog
    3
    Par défaut
    Bonjour,

    je traduis tout mon système de site de VB vers C# et à la main les 10 000 lignes de code !!!
    Bon courage !!

    Pour ce qui est de ta question, le nom des classes est sensible à la casse en C#, donc si tu mets DataTable ça devrait mieux passer
    Less Is More
    Pensez à utiliser les boutons , et les balises code
    Desole pour l'absence d'accents, clavier US oblige
    Celui qui pense qu'un professionnel coute cher n'a aucune idee de ce que peut lui couter un incompetent.

  3. #3
    Membre chevronné Avatar de _PascalC_
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2008
    Messages
    220
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Vendée (Pays de la Loire)

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

    Informations forums :
    Inscription : Août 2008
    Messages : 220
    Par défaut
    Contrairement à Vb.net, le C# est sensible à la casse. Essai de mettre "DataTable" au lieu de "datatable".

    Pascal

  4. #4
    Membre expérimenté
    Avatar de zooffy
    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Août 2004
    Messages
    3 895
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chef de projet MOA
    Secteur : Bâtiment

    Informations forums :
    Inscription : Août 2004
    Messages : 3 895
    Par défaut
    Merci les gars pour la réponse et les encouragements.

    Une autre pour la fin d'aprem ?

    Je sèche sur un truc qui doit être du pur VB, mais je maitrise pas à fond.
    Voici la sub entière en VB :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    Public Sub New(ByVal idChainCo As String)
                Dim sRQ As String = ConfigurationManager.ConnectionStrings(idChainCo).ConnectionString
                If sRQ = "" Then
                    Throw New AppExecption("Chaine de connexion " & idChainCo & " introuvable")
                End If
                Conex = New SqlConnection(sRQ)
            End Sub
    Je l'ai traduit par cela :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
            public Dmanager(string idChainCo)
            {
                string sRQ = System.Configuration.ConfigurationManager.ConnectionStrings[idChainCo].ConnectionString;
                if (sRQ == "")
                {
     
                }
                Conex = new SqlConnection(sRQ);
            }
    Je n'ai pas réussi à traduire le "Throw".

  5. #5
    Modérateur
    Avatar de DotNetMatt
    Homme Profil pro
    CTO
    Inscrit en
    Février 2010
    Messages
    3 611
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : CTO
    Secteur : Finance

    Informations forums :
    Inscription : Février 2010
    Messages : 3 611
    Billets dans le blog
    3
    Par défaut
    Code C# : Sélectionner tout - Visualiser dans une fenêtre à part
    throw new AppExecption("Chaine de connexion " + idChainCo + " introuvable");
    Less Is More
    Pensez à utiliser les boutons , et les balises code
    Desole pour l'absence d'accents, clavier US oblige
    Celui qui pense qu'un professionnel coute cher n'a aucune idee de ce que peut lui couter un incompetent.

  6. #6
    Membre expérimenté
    Avatar de zooffy
    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Août 2004
    Messages
    3 895
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chef de projet MOA
    Secteur : Bâtiment

    Informations forums :
    Inscription : Août 2004
    Messages : 3 895
    Par défaut
    Décidément, la casse va me jouer par mal de tour je pense.

    Alors revenons sur la DataTable : ça marche pas. Il dit :
    Erreur 2 Le type ou le nom d'espace de noms 'DataTable' est introuvable (une directive using ou une référence d'assembly est-elle manquante*?) D:\inetpub\SystemC\App_Code\DataCon.cs 29 17 http://www.systemc.maison/
    Dans les Using j'ai mis System.Data.SQLClient, en VB c'est celui là qui contient la DataTable, je crois.

    Merci à tous.

  7. #7
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Par défaut
    Citation Envoyé par zooffy Voir le message
    Décidément, la casse va me jouer par mal de tour je pense.

    Alors revenons sur la DataTable : ça marche pas. Il dit :

    Dans les Using j'ai mis System.Data.SQLClient, en VB c'est celui là qui contient la DataTable, je crois.
    Non, DataTable est un objet commun à tous les providers (pas spécifique à Sql Server). Il doit donc être dans System.Data (ou Systam.Data.Common, je ne me souviens plus).

    Sinon, autre point qui me perturbe mais là, on est dans le pur VB encore une fois et je ne maitrise pas ce choses là. Dans ma classe de gestion d'exception j'ai ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
            Sub New(ByVal MsgError As String)
                MyBase.New(MsgError)
            End Sub
    J'ai utilisé un traducteur de code en ligne qui m'a donné ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    AppExecption(string MsgError)
            {
                base.New(MsgError);
            }
    Mais le Nezw posqe un souci comme cela :
    Constructeur appelant le contructeur de base :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    MyClass(string msgError) : base(msgError)
    {
     
    }

  8. #8
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Par défaut
    Citation Envoyé par zooffy Voir le message
    Je n'ai pas réussi à traduire le "Throw".
    Casing, encore.

    C'est throw.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    throw new AppException(...);
    Tous les mots clefs du langage en C# sont en minuscules (je parle bien des mots clefs langage, pas des classes du framework, bien sur).

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

Discussions similaires

  1. ConversioN C++.net vers visual C++ mfc
    Par ricky78 dans le forum MFC
    Réponses: 5
    Dernier message: 13/06/2007, 17h03
  2. ASP.net vers Crystal
    Par Fleur-Anne.Blain dans le forum ASP.NET
    Réponses: 3
    Dernier message: 04/05/2007, 09h57
  3. Une solution pour migrer de .NET vers MFC
    Par torNAdE dans le forum MFC
    Réponses: 1
    Dernier message: 03/05/2006, 22h23
  4. Convertion code Delphi.net vers C#
    Par RamDevTeam dans le forum Delphi .NET
    Réponses: 1
    Dernier message: 31/03/2006, 21h08

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