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 :

Problème de migration vers .NET 4.5


Sujet :

ASP.NET

  1. #1
    Candidat au Club
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2013
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Vienne (Limousin)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2013
    Messages : 3
    Points : 3
    Points
    3
    Par défaut Problème de migration vers .NET 4.5
    Bonjour,
    J'ai migré mon appli web qui fonctionne parfaitement du framework 4.0 au framework 4.5.
    Et là, bardaf, c'est l'embardée.

    Mes pages basées sur un masterpage renvoient :
    La collection Controls ne peut pas être modifiée, car le contrôle contient des blocs de code (c'est-à-dire <% ... %>).

    Je résous le problème en changeant dans le web.config
    <pages validateRequest="false" controlRenderingCompatibilityVersion="4.0" clientIDMode="AutoID"/> en
    <pages validateRequest="false" controlRenderingCompatibilityVersion="3.5" clientIDMode="AutoID"/>.

    Cette valeur avait en effet été changée automatiquement par vs2012 lors de la migration

    Mais cette solution sonne trop bricolage à mon gout et ne me convient pas.
    Quelqu'un aurait une piste où chercher ?

    merci

  2. #2
    Expert éminent
    Avatar de Immobilis
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2004
    Messages
    6 559
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 559
    Points : 9 512
    Points
    9 512
    Par défaut
    Salut,
    Citation Envoyé par abasourdix Voir le message
    J'ai migré mon appli web qui fonctionne parfaitement du framework 4.0 au framework 4.5.
    Comment as-tu réalisé cette migration?
    Une solution VS2010 doit être migrée pour être ouverte avec VS2012. Pour autant, cela ne veut pas dire qu'elle peut être développée sur le FW 4.5.

    Ce n'est pas vraiment du bricolage.

    A+

  3. #3
    Candidat au Club
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2013
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Vienne (Limousin)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2013
    Messages : 3
    Points : 3
    Points
    3
    Par défaut
    bonjour,
    j'avais déjà fait migrer vers VS2012 depuis quelques mois en ouvrant ma solution avec VS 2012, justement. Mais elle était toujours en .NET 4.0

    Là, j'ai juste voulu passer en framework 4.5 pour éventuellement profiter des nouvelles fonctions d'asynchronisme. Je suis passé par les propriétés du projet > Application > framework cible.

    Cette modification a engendré des modification de mon edmx apparemment, mais aussi du web.config plus divers fichiers de ressources ainsi que le reférence.cs

    Mais, je n'ai pas de problème à la compil. juste à l'éxécution.


    J'ai un peu galéré avant de trouver l'astuce qui consistait à changer controlRenderingCompatibilityVersion="4.0" en "3.5", parceque évidement, en repassant au fmrk 4.0, ces modifications automatiques n'étaient pas annulées. (Merci Winmerge)

    Le problème est que je ne maîtrise pas les conséquences de ma rustine. Qu'est ce que je perds ?
    Et surtout, d'où ça peut bien venir et comment je peux corriger ça ?

    en tout cas, merci pour la réponse

  4. #4
    Membre chevronné

    Profil pro
    Chef de Projet / Développeur
    Inscrit en
    Juin 2002
    Messages
    610
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Chef de Projet / Développeur
    Secteur : Santé

    Informations forums :
    Inscription : Juin 2002
    Messages : 610
    Points : 2 076
    Points
    2 076
    Par défaut
    Je ne vois pas en quoi ta modification te contrarie.

    L'ancienne transformation des ID C# en ID HTML construisait systématiquement des id HTML à rallonge (surtout dans le cas de MasterPage) dans le but d'éviter les conflits.

    Par défaut asp.net essaie désormais de générer des id plus concis.

    Sauf erreur de ma part, ces id client n'ont d'importance que dans le cas de manipulation en javascript coté client (ce qui va être le cas de certains contrôles ASP.net évolués d'éditeur tiers).

    La solution la plus simple et la plus radicale est celle consistant à changer le controlRenderingCompatibilityVersion dans le web.config.

    Mais il est possible de faire un réglage plus fin au niveau de chaque page et même chaque contrôle grâce à la propriétés ClientIDMode.

    Il en existe 3 : l'ancien (AutoID), le nouveau (Predicable) et Static (où id c# == id html / très pratique mais attention aux conflit).

    http://msdn.microsoft.com/fr-fr/libr...entidmode.aspx

    exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <%@ Page Title="" Language="C#" MasterPageFile="~/MasterPage.master" ClientIDMode="Predictable" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
    Il n'y a donc pas de solution unique.
    Tout dépend de la nature et de la taille de ton projet.

    Cette nouvelle génération d'id, créée une incompatibilité.
    Donc même si cela fait bricolage, il faut la gérer à un niveau ou un autre (globale ou ponctuelle) : il n'y a pas de miracle.

    Cordialement

  5. #5
    Membre régulier
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2013
    Messages
    51
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

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

    Informations forums :
    Inscription : Février 2013
    Messages : 51
    Points : 83
    Points
    83
    Par défaut
    Bonjour,

    Pour information, ouvrir une solution VS2010 dans VS2012 ne demande pas de migration. Les fichiers sont compatibles entre les deux versions et il est même possible de revenir en arrière (par exemple travailler avec 2012 et ensuite ouvrir le projet dans 2010).

    Pascal

Discussions similaires

  1. Problème de migration vers SQL2008
    Par Alikendarfen dans le forum MS SQL Server
    Réponses: 0
    Dernier message: 16/10/2009, 14h06
  2. Réponses: 8
    Dernier message: 05/07/2009, 12h45
  3. Probléme de migration vers VS 2005
    Par boyDjine dans le forum VC++ .NET
    Réponses: 9
    Dernier message: 15/09/2008, 19h51
  4. Problème de migration vers VS2008
    Par alen dans le forum MFC
    Réponses: 12
    Dernier message: 23/05/2008, 16h49
  5. Problème de migration asp.net 1.1 -> asp.net 2.0
    Par Avatarr dans le forum ASP.NET
    Réponses: 1
    Dernier message: 11/12/2007, 10h13

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