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

Dotnet Discussion :

web.Config + ConnectionStrings.Config add as link


Sujet :

Dotnet

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2006
    Messages
    436
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Hauts de Seine (Île de France)

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

    Informations forums :
    Inscription : Novembre 2006
    Messages : 436
    Par défaut web.Config + ConnectionStrings.Config add as link
    Bonjour à tous ! Alors premièrement, je ne sais pas où placer ce post parce que ce web.config étant utilisé pour une appli web, une appli console et une DLL (DAL contenant EDMX).

    Je vous explique ce que j'essaye de faire :
    Je souhaiterai placer les chaînes de connexions utilisées par mes différents projets au sein de ma solution dans un fichier de config spécifique. Le but est de les ajouter as a link pour :
    gérer d'un seul endroit le tout. En effet : je travaille de chez moi ou du boulot (en local) et je déploie sur mon hosteur : 1&1 . Cela fait 3 chaines de connexions différentes. Or, c'est énervant de devoir toujours switcher.

    Voici donc ce que j'ai fait suite à différentes sources trouvées sur Internet :

    (le projet DAL est le conteneur des chaînes de connexion car je fait tooujours des approches DataBase First)

    - projet DAL contient :
    > un fichier ConnectionStrings.Config.
    > un fichier App.Config qui référencie ConnectionStrings.config


    - projet Web qui contient :
    > ConnectionStrings.Config added as a link
    > Web.Config qui référencie ConnectionStrings.config

    Mais je n'arrive pas à faire fonctionner cela. J'ai noté que si je faisais un copié collé du fichier ConnectionStrings.config dans les différents projets, cela fonctionne. Mais cela revient encore une fois à repasser dans chaque fichier 1 par 1...

    J'ai essayé de mettre sur les ConnectionStrings.config output à copyalways, rien n'y a fait.

    Merci de vos conseils et retour d'expériences !

    Ps : si quelqu'un qui lit ce message à déjà utilisé EntityFramework hébérgé chez 1&1, s'il peut se signaler car j'aimerai avoir de l'aide pour ma connectionString qui ne passe pas avec les metaData (.csdl ...)

  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
    Tu peux t'inspirer de ce qui est fait ici : http://stackoverflow.com/questions/2...nection-string

    Il y a un fichier de config pour chacune des configurations de build (dans ton cas "Home", "Work" et "Production" par exemple). Avant de lancer une build, tu choisis la configuration souhaitée, puis avec le pre-build event, Visual Studio va supprimer le fichier de config actuel, puis copier le bon fichier.

    Pour le reste, je ne suis pas chez 1&1 donc je ne peux pas vraiment t'aider...
    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 éclairé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2006
    Messages
    436
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Hauts de Seine (Île de France)

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

    Informations forums :
    Inscription : Novembre 2006
    Messages : 436
    Par défaut
    Salut merci bien Matt ! Je garde le lien sopus le coude ! Pour la chaîne de connexion 1&1 je pense que je vais tout simplement gérer le mode Debug et Release du Web.config.

    C'est vraiment sympa comme manière de faire (même si j'ai l'impression de sortir le bazooka pour tuer une mouche lol)


    Sinon, j'ai trouvé une solution moins crade que celle que je faisais. Je te la donne dès fois que ça t'intéresse.

    Suppression des app.config et autres dans projet DAL et BLL.

    Sur mon projet asp.net mvc, j'ai le traditionnel web.config, j'ai mon ConnectionStrings.config que je référencie dedans.

    Sur mon projet console par exemple, j'ai un app.config, le connectionstrings added as link from asp.net mvc.

    Dans les propriétés de compilation, je met un output always sur le connectionstrings.

    Et ça passe tout seul dans ce sens ! Du coup je peux switcher d'une chaîne de connexion à l'autre dans un seul fichier et cela est pris en compte dans tous mes projets !

    Pour 1&1, j'ai trouvé aussi : tu ne peux tout simplement pas attaquer la base de données de l'extérieur ! Je m'en suis aperçu en déployant (via VS et mode FTP -> trop pratique : adieu filezila ) que ma chaîne de connexion était valide et que la connexion à la DB se faisait correctement.

    Et comme je t'apprécie beaucoup, je te fais un petit topo sur 1&1 après 1 week dessus :

    - rapidité d'exécution : tu créés une DB, un sous domaine, un compte FTP : tout est très rapide ! Il t'affichent sur le site 30 min avant mise en place mais 2 sec après ça fonctionne déjà.

    - simplicité de la config des noms de domaine, j'ai par exemple créé des sous domaines pour avoir un admin.monsite.fr, ws.monsite.fr (webservice). C'est également super simple de choisir le dossier sur lequelle pointe le domaine/sousdomaine.

    - config email & co très facile

    - mettre à jours le référencement google & co : c'est du one clic et limité à un refresh / jour

    - LA CONFIGURATION ! Je pensais en chi** et ba non ! Mon site asp.net MVC 4 avec son web.config : tout à été mis en place et fonctionne du premier coup ! Je n'ai pas eu une seule page IIS Error ! (ma hantise :p)

    - ce qui est préconfiguré : .NET Framework 4.5 donc Silverlight 5 ok, ASP.NET MVC 4 ok, web services ok. C'est simple : tout ce que j'ai testé a fonctionné du premier coup ! Même un mini site html + php avec connexion base de données (bon j'y allait avec les méthodes ultra basiques) ok ! J'ajoute qu'entity Framework 5 est déjà en place ! Ca marche aussi

    Pour l'instant, je suis vraiment surpris par 1&1, on me conseillait OVH à fond (au boulot, les potes etc) mais il n'y avait pas le 4.5 et EF5 (enfin une version de retard) quand je souhaité prendre l'hébergement mutualisé.

    Je ne regrette rien ! (je ne fais pas de la pub : juste que si des personnes hésitent, qu'ils sachent que leurs craintes sont à mon avis, injustifiées ou relatent de la qualité de 1&1 d'il y a 2, 3 ans.

    PS : je ne peux pas juger OVH car ceci est mon premier hébergement perso : j'ai toujours travailler sur un serveur dédié a disposition des entreprises avec qui j'ai collaboré. Je pense qu'OVH est aussi excellent !

  4. #4
    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
    Oui effectivement la solution que tu décris est une autre alternative, il y a plusieurs façons de procéder, l'important c'est que ça marche

    Merci de partager ton retour d'expérience avec 1&1. Me concernant j'étais chez eux il y a longtemps. A l'époque, c'était pas mal, mais tout n'était pas rose loin de là... Ce qui a entraîné mon passage chez Ikoula qui dès le début fournissait une qualité de service supérieure à 1&1, mais j'imagine qu'ils (1&1) ont dû grandement rattraper ce retard depuis. Donc effectivement il doit exister pas mal d'avis relatant des problèmes avec eux, mais qui doivent maintenant être assez anciens...

    OVH je considère que c'est du low-cost. C'est comme un vol sur EasyJet, tu paies pas cher et tu sais à quoi t'attendre : le minimum (support très moyen, délais de prise en charge assez longs...). Les serveurs tournent, c'est dispo, mais il vaut mieux ne pas avoir de problème ou vouloir faire quelque chose de spécifique que tu ne maitrises pas trop... Mais bon ce n'est que mon avis !

    Aujourd'hui j'ai une plateforme à cheval sur Ikoula, Aruba Cloud et Azure. L'objectif à terme est de basculer entièrement sur Aruba ou sur Azure je n'ai pas encore arrêté mon choix, même si je suis pleinement satisfait des services d'Ikoula. C'est juste qu'à un moment, il vaut mieux harmoniser le tout
    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.

  5. #5
    Membre éclairé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2006
    Messages
    436
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Hauts de Seine (Île de France)

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

    Informations forums :
    Inscription : Novembre 2006
    Messages : 436
    Par défaut
    Je suis du même avis que toi, mais le prix d'azure étant largement au delà de mes moyens pour le résultat à avoir, que ça ne vaut pas le coup.

    Peut être un jour, je passerai sur Azure ! Ca semble tellement alléchant !

    Sinon j'ai encore changé de technique ^^

    J'ai mis ma connexionString 1&1 dans le Web.Release.Config.

    Et du coup, au deploy, ça fait un xslt:replace et pas de prise de tête.

    <connectionStrings xdt:Transform="Replace">
    <add ... />
    </connectionStrings>
    Par contre, j'ai vérifié en créant d'autre profil :
    - Web.Local.Config (pour chez moi)
    - Web.Entreprise.Config

    Mais les CS ne sont prises qu'au deploy :/ il faut rajouter des choses au build event pour que ça fonctionne au lancement (F5). Mais comme je n'ai trouvé que des articles avec en exemple un path en dur et même pas relatif, je trouve pas ça terrible. Mais avec un peu de recherche, je suis sur de finir par trouver.

    Edit : je pense que je vais partir sur le lien que tu m'avais envoyé ^^

    (idéalement je sélectionnerai le profil dans la liste de VS dans la barre d'outils et au lancement du projet, ça choisirai automatiquement la bonne CS

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

Discussions similaires

  1. [Débutant] ASP.NET MVC 3 - VS2012 [Web.config - connectionStrings]
    Par Jinkas dans le forum ASP.NET MVC
    Réponses: 1
    Dernier message: 28/04/2013, 16h38
  2. Réponses: 3
    Dernier message: 21/07/2010, 09h22
  3. Projet d'installation web et fichier config
    Par zeus.isback dans le forum C#
    Réponses: 1
    Dernier message: 07/11/2008, 13h44
  4. [VB 2005]fichier app.config & connectionstring
    Par Kropernic dans le forum Windows Forms
    Réponses: 8
    Dernier message: 03/06/2008, 18h05
  5. Serveur Web pour petite config
    Par PerfectSlayer dans le forum Réseau
    Réponses: 1
    Dernier message: 24/10/2005, 13h02

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