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

C# Discussion :

Migration dotnet 1.1 vers 3.5


Sujet :

C#

  1. #1
    Invité
    Invité(e)
    Par défaut Migration dotnet 1.1 vers 3.5
    Bonjour,

    J'ai une application developper en dotnet 1.1 et j'envisage d'effectuer une migration vers la version 3.5

    Y a t il des precautions à prendre, et des piege à éviter.

    Merci d'avance.

    Guillaume

  2. #2
    Rédacteur
    Avatar de Louis-Guillaume Morand
    Homme Profil pro
    Cloud Architect
    Inscrit en
    Mars 2003
    Messages
    10 839
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Cloud Architect
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2003
    Messages : 10 839
    Points : 28 252
    Points
    28 252
    Par défaut
    ca dépend. tu vas juste la recompiler en 3.5 ou tu vas recoder en améliorant le code en utilisant générics, linq, et autre nouveautés?
    moi c'est Louis-Guillaume, ni Louis, ni Guillaume mais Louis-Guillaume et je n'aide pas ceux qui écorchent mon nom

  3. #3
    Rédacteur
    Avatar de dev01
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    2 451
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 2 451
    Points : 6 017
    Points
    6 017
    Par défaut
    Bonjour.

    Les précautions à prendre concernent surtout les classes marqués Deprecated qui ont été supprimés du framework 3.5. Ensuite vu que vous venait de loin il faut faire des tests un peu poussé, vous changer de CLR ( 1.1 vers 2.0 )
    - MVP C#
    -Tout problème a une solution, le vrai problème est de trouver la solution .....
    - Linux & mono : l'avenir

  4. #4
    Membre éclairé Avatar de ZaaN
    Inscrit en
    Novembre 2005
    Messages
    819
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 819
    Points : 661
    Points
    661
    Par défaut
    Un point parmi tant d autre :

    Attention aux classes qui seraient devenue obsoletes (exemple ici)
    Pour les details, cherche tout seul !

  5. #5
    Membre éprouvé Avatar de neptune
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    835
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2003
    Messages : 835
    Points : 958
    Points
    958
    Par défaut
    Sinon, il est intéressant de savoir pourquoi tu souhaites migrer. Si c'est uniquement pour dire je suis en 3.5 et plus en 1.x ca n'en vaut pas la peine. Ton application n'est pas mauvaise parce qu'elle n'est pas compilée avec la dernière version du framework .NET.

  6. #6
    Rédacteur
    Avatar de dev01
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    2 451
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 2 451
    Points : 6 017
    Points
    6 017
    Par défaut
    Citation Envoyé par neptune Voir le message
    Sinon, il est intéressant de savoir pourquoi tu souhaites migrer. Si c'est uniquement pour dire je suis en 3.5 et plus en 1.x ca n'en vaut pas la peine. Ton application n'est pas mauvaise parce qu'elle n'est pas compilée avec la dernière version du framework .NET.
    ben oui et non. Le problème n'est pas la recompilation ( quoiqu'il faudrait vérifier si le compilateur C# n'as pas subit un petit lifting et quelque amélioration sur l'optimisation ) mais bien le runtime. En effet le runtime de .NET 3.5 à été largement amélioré et est plus rapide et performant que la version 1.1.
    - MVP C#
    -Tout problème a une solution, le vrai problème est de trouver la solution .....
    - Linux & mono : l'avenir

  7. #7
    Invité
    Invité(e)
    Par défaut
    En fait je suis obligé de modifier l'appli pour aujouter des fonctionnalités qui sont disponibles uniquement dans le framework 3.5.

  8. #8
    Rédacteur
    Avatar de SaumonAgile
    Homme Profil pro
    Team leader
    Inscrit en
    Avril 2007
    Messages
    4 028
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Team leader
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2007
    Messages : 4 028
    Points : 6 334
    Points
    6 334
    Par défaut
    Citation Envoyé par dev01 Voir le message
    ben oui et non. Le problème n'est pas la recompilation ( quoiqu'il faudrait vérifier si le compilateur C# n'as pas subit un petit lifting et quelque amélioration sur l'optimisation ) mais bien le runtime. En effet le runtime de .NET 3.5 à été largement amélioré et est plus rapide et performant que la version 1.1.
    Oui le compilateur a subi un gros lifting, mais ça ne remet pas en cause la compilation d'une appli originellement en 1.1, ce sont des améliorations de performance du processus de compilation et aussi de performance du code généré.
    De plus, le CLR du 1.1 par rapport à 2.0, puis 3.5 est backward compatible à 100%. Depuis le framework 1.1, chaque amélioration est une extension du CLR, mais pas une modification de l'existant.
    Besoin d'un MessageBox amélioré ? InformationBox pour .NET 1.1, 2.0, 3.0, 3.5, 4.0 sous license Apache 2.0.

    Bonnes pratiques pour les accès aux données
    Débogage efficace en .NET
    LINQ to Objects : l'envers du décor

    Mon profil LinkedIn - MCT - MCPD WinForms - MCTS Applications Distribuées - MCTS WCF - MCTS WCF 4.0 - MCTS SQL Server 2008, Database Development - Mon blog - Twitter

  9. #9
    Rédacteur
    Avatar de dev01
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    2 451
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 2 451
    Points : 6 017
    Points
    6 017
    Par défaut
    Citation Envoyé par SaumonAgile Voir le message
    Oui le compilateur a subi un gros lifting, mais ça ne remet pas en cause la compilation d'une appli originellement en 1.1, ce sont des améliorations de performance du processus de compilation et aussi de performance du code généré.
    Si il y a eu modification du code généré alors il y a modification de la façon dont s'éxécute le programme au final

    Citation Envoyé par SaumonAgile Voir le message
    De plus, le CLR du 1.1 par rapport à 2.0, puis 3.5 est backward compatible à 100%. Depuis le framework 1.1, chaque amélioration est une extension du CLR, mais pas une modification de l'existant.
    nop je suis pas d'accord. Le CLR a été modifié même s'il est capable de faire tourner des applications 1.1. L'exécution des applications ce fait bien sur le CLR 1.1 par défaut car compilé pour. Mais il existe une directive à mettre dans le fichier de config afin de sépcificier sur quel CLR il faut exécuter le programme :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    <configuration>
      <runtime>
        <compatibilityversion major="3" minor="0"/>
      </runtime>  <startup>
        <supportedRuntime version="v3.5.7000"/>
       </startup>
    </configuration>
    On peux donc forcer une application 1.1 à s'éxécuter sur un runtime 3.5 et à bénéficier des améliorations
    - MVP C#
    -Tout problème a une solution, le vrai problème est de trouver la solution .....
    - Linux & mono : l'avenir

  10. #10
    Rédacteur
    Avatar de SaumonAgile
    Homme Profil pro
    Team leader
    Inscrit en
    Avril 2007
    Messages
    4 028
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Team leader
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2007
    Messages : 4 028
    Points : 6 334
    Points
    6 334
    Par défaut
    Citation Envoyé par dev01 Voir le message
    Si il y a eu modification du code généré alors il y a modification de la façon dont s'éxécute le programme au final

    nop je suis pas d'accord. Le CLR a été modifié même s'il est capable de faire tourner des applications 1.1. L'exécution des applications ce fait bien sur le CLR 1.1 par défaut car compilé pour. Mais il existe une directive à mettre dans le fichier de config afin de sépcificier sur quel CLR il faut exécuter le programme :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    <configuration>
      <runtime>
        <compatibilityversion major="3" minor="0"/>
      </runtime>  <startup>
        <supportedRuntime version="v3.5.7000"/>
       </startup>
    </configuration>
    On peux donc forcer une application 1.1 à s'éxécuter sur un runtime 3.5 et à bénéficier des améliorations
    Honnêtement, en te lisant, je trouve que c'est simplement une autre manière de dire ce que je disais au début.
    Besoin d'un MessageBox amélioré ? InformationBox pour .NET 1.1, 2.0, 3.0, 3.5, 4.0 sous license Apache 2.0.

    Bonnes pratiques pour les accès aux données
    Débogage efficace en .NET
    LINQ to Objects : l'envers du décor

    Mon profil LinkedIn - MCT - MCPD WinForms - MCTS Applications Distribuées - MCTS WCF - MCTS WCF 4.0 - MCTS SQL Server 2008, Database Development - Mon blog - Twitter

  11. #11
    Rédacteur
    Avatar de dev01
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    2 451
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 2 451
    Points : 6 017
    Points
    6 017
    Par défaut
    Citation Envoyé par SaumonAgile Voir le message
    Honnêtement, en te lisant, je trouve que c'est simplement une autre manière de dire ce que je disais au début.
    C'est mon pouvoir de persuasion qui fait ça
    - MVP C#
    -Tout problème a une solution, le vrai problème est de trouver la solution .....
    - Linux & mono : l'avenir

  12. #12
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    47
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 47
    Points : 29
    Points
    29
    Par défaut
    Bonjour,

    Je trouve votre discussion très intéressante.
    Dans ma boite, on essaie de migrer une application en 3.5

    Notre application est en 1.1 mais nous avons pas réussis à la recompilé en 3.5.

    Notre application mélange de l'asp.net, c# et c++ managé et c++ non managé

    au niveau du c++ ça coince
    on ne peut pas le migrer en 3.5

    pour l'instant je trouve pas encore d'info sur le sujet

    j'espère que vous aurez peut être une piste

  13. #13
    Rédacteur
    Avatar de dev01
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    2 451
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 2 451
    Points : 6 017
    Points
    6 017
    Par défaut
    D'un autre coté sans la description exacte du pb, on peux pas vous aider .

    Quel est le message d'erreur du compilateur ? Avez vous vérifié les classes marqué obsolètes dans le Fx 2.0 et qui ont été supprimés dans le 3.5 ?
    - MVP C#
    -Tout problème a une solution, le vrai problème est de trouver la solution .....
    - Linux & mono : l'avenir

  14. #14
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    47
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 47
    Points : 29
    Points
    29
    Par défaut
    Citation Envoyé par dev01 Voir le message
    D'un autre coté sans la description exacte du pb, on peux pas vous aider .

    Quel est le message d'erreur du compilateur ? Avez vous vérifié les classes marqué obsolètes dans le Fx 2.0 et qui ont été supprimés dans le 3.5 ?
    je te remercie, je n'ai pas vérifié ça

    le compilateur me donne beaucoup de fonction obsolète

    pour mon code c++, en fait il faut que je trouve les bonnes fonctions de compilation pour le compiler car il mélange le code c++ , le code c, le code c++ managé
    (c'est une vielle appli)

    le code c++ (notre couche métier) est appelé par du code c#

    on a demandé à une personne de microsoft de nous faire migrer notre code mais pour l'instant il y arrive pas

  15. #15
    Rédacteur
    Avatar de SaumonAgile
    Homme Profil pro
    Team leader
    Inscrit en
    Avril 2007
    Messages
    4 028
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Team leader
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2007
    Messages : 4 028
    Points : 6 334
    Points
    6 334
    Par défaut
    Il me semblait que le C++ managé n'était plus dispo après le framework 1.1 et qu'il avait été remplacé par le C++/CLI ?
    Me serait-je trompé ? Suis en train de mentir effrontément ?
    Besoin d'un MessageBox amélioré ? InformationBox pour .NET 1.1, 2.0, 3.0, 3.5, 4.0 sous license Apache 2.0.

    Bonnes pratiques pour les accès aux données
    Débogage efficace en .NET
    LINQ to Objects : l'envers du décor

    Mon profil LinkedIn - MCT - MCPD WinForms - MCTS Applications Distribuées - MCTS WCF - MCTS WCF 4.0 - MCTS SQL Server 2008, Database Development - Mon blog - Twitter

  16. #16
    Rédacteur
    Avatar de dev01
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    2 451
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 2 451
    Points : 6 017
    Points
    6 017
    Par défaut
    Citation Envoyé par SaumonAgile Voir le message
    Il me semblait que le C++ managé n'était plus dispo après le framework 1.1 et qu'il avait été remplacé par le C++/CLI ?
    Me serait-je trompé ? Suis en train de mentir effrontément ?
    Tiens je croyais honteusement que c'était la même chose ...

    si nicopyright passe par ici qu'il éclaire notre lanterne ( ô grand maitre du C++/CLI pardonnes moi mes trolls C++/CLI vs C# )
    - MVP C#
    -Tout problème a une solution, le vrai problème est de trouver la solution .....
    - Linux & mono : l'avenir

  17. #17
    Rédacteur
    Avatar de dev01
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    2 451
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 2 451
    Points : 6 017
    Points
    6 017
    Par défaut
    Après vérif effectivement c'est bien deux langages différents et le C++/CLI remplace le C++ Managé.

    C'est donc normale que la couche C++ managé ne compile plus en .NET 3.5 vu qu'elle n'existe plus.

    Ce que je vous recommanderais, vu les infos données, c'est penser à migrer la couche C++ managé vers du C#. Un beau peu wrapper C++/C# et le tours et joué. Le passage par le C++ managé ou le C++/CLI est à mon avis une couche pour rien. Et comme de toute façon il va falloir réécrire la partie C++ Managé en quelque chose d'autre autant l'écrire en C# directement non ?
    - MVP C#
    -Tout problème a une solution, le vrai problème est de trouver la solution .....
    - Linux & mono : l'avenir

  18. #18
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    47
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 47
    Points : 29
    Points
    29
    Par défaut


    mille merci pour vos infos

    alors là, c'est génial !!

    maintenant, on va convaincre plus facilement notre chef de réécrire le c++

    c'est trop génial

    encore merci

    le code c++ était tellement "bugué" que c'était mon rêve de le voire disparaître maintenant je sais qu'on peut vendre ça à mon chef, et je suis trop heureuse !!

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

Discussions similaires

  1. Réponses: 26
    Dernier message: 12/11/2008, 17h59
  2. migration de base access vers postgres
    Par greg_ggl dans le forum PostgreSQL
    Réponses: 3
    Dernier message: 09/03/2006, 10h33
  3. [PostGre] Migration de Oracle 8i vers PostGre ?
    Par delphim dans le forum Autres SGBD
    Réponses: 2
    Dernier message: 21/04/2004, 17h04
  4. [Migrat+doc] de Netbeans vers Eclipse d'une applic existante
    Par vempiria dans le forum Eclipse Java
    Réponses: 4
    Dernier message: 13/04/2004, 08h23
  5. Migration 7.3.4 vers 9.2
    Par childeric dans le forum Administration
    Réponses: 8
    Dernier message: 12/03/2004, 09h45

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