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 :

Dynamiser le web.config


Sujet :

ASP.NET

  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    412
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juin 2005
    Messages : 412
    Par défaut Dynamiser le web.config
    Salut a tous,
    J'effectue des uploads et j'aurais voulu changer la taille maximum autorisés des fichiers que j'upload.
    J'ai donc
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <system.web>
        <httpRuntime maxRequestLength="100000" />
    </system.web>
    J'aurais voulu savoir si c'est possible de changer la valeur 100000 par une valeur stocké dans un fichier texte (préférable) ou dans une base de données.

    Merci pour votre aide.

    Mael.

  2. #2
    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
    Par défaut
    Quel est l'interêt de mettre la valeur dans le web.config si tu veux la lire depuis un autre endroit ? La question est d'ailleurs valable dans l'autre sens...
    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

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    412
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juin 2005
    Messages : 412
    Par défaut
    Je ne la lit null part, c'est juste un variable qui donne a IIS l'indication sur la taille maximum d'un upload. Je veut juste savoir si c'est possible de la changer dynamiquement.
    Sinon, ou peut tu indiquer cela ailleur que dans le web.config et de qu'elle maniere?

    Merci

  4. #4
    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
    Par défaut
    Ah ok, j'avais lu un peu rapidement. Je ne connais pas de moyens de faire ça, je ne suis pas sûr que ce soit possible vu que ce paramètre affecte la machine.
    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

  5. #5
    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
    Salut MAEL

    Ton truc va être assez compliqué, mais tout à fait faisable.

    L'idée c'est de stocker les infos, que ce soit celle là ou une autre, dans un fichier de ressources.
    Lorsque tu stocke cette info dans un web.config, tu influe sur le répertoire, ou sur le site, ou sur tous les sites ou sur toute la machine (en fonction de la place du fichier web.config)

    Donc si tu veux un truc dynamique il faut stocker l'info dans un endroit plus accessible. Pour cela tu as au moins deux options, tout aussi fatidieuse à metre en place les unes que les autrs:
    - tu te fais un frameWork technique avec un composant spécialisé upload et tu passeras cette info en paramettre d'un fonction quelconque
    - tu gère toutes ces info là dans un fichier de ressources, ce qui implique qu'il faut te faire un projet de ressource dans chacun de tes sites.

    Aprés ça dépend de ta méthode de travail (tu fais un gros site que tu gère d'un bout à l'autre, tu fais plusieurs sites, tu fais des bouts de site que tu refile à quelqu'un, ...)

    Enfin, il y aussi une petite solution avec un fichier XML. Tu te fabrique une petite fonction pour aller lire le fichier et récupérer l'info et tu passes en paramettre le nom de l'info dans le fichier XML

    Voilà, j'espère ne pas t'avoir trop noyé d'idée, mais je pense que ton souci est un peu plus important que tu ne le croyais.

    @+

  6. #6
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    412
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juin 2005
    Messages : 412
    Par défaut
    Merci zooffy pour toute ces idées mais je n'est malheureusement pas les compétences pour faire tout ca et surtout un gros manque de temps.
    En revanche, je voudrais bien que tu me detail un peu plus l'idée du fichier XML. Pour la fonction qui lit mon XML ca devrait aller mais je n'est pas tres bien compris la suite.

    Merci encore.

  7. #7
    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
    Salut

    C'est un peu bête que tu ne puisse pas prendre le temps de te pencher sur une idée de FrameWork personalisé, c'est vraiment la meilleur méthode de travail que je connaisse avec .NET. Genre, tu te fais quelques fonction toute faite pour accéder aux donnée et ça marche dans tous les cas et surtout tu peux l'utiliser pour tous tes sites. Bon, passons.

    Pour le fichier XML, ça repart sur la même idée que le web.config (qui n'est autre qu'un fichier XML lui même). Dans le web.config tu ne peux gérer qu'une valeur pour un paramètre. Si tu monte un fichier XML à toi et que tu stocke différentes valeurs pour un même paramettre, tu pourras y accéder en live avec un appel de fonction.

    Donc, losrque tu fais appel à ton composant d'upload, tu lui passe un paramettre de taille maximum en faisnat appel à une autre fonction qui va lire dans ton fichier XML la valeur que tu souhaite en fonction du contexte.
    Ainsi dans ton XML tu stocke toutes les valeurs de contexte que tu souhaites et tu fais une fonction qui va chercher la bonne valeur au bon moment.

    Mais il me vient une question : tu utilises quoi pour faire tes uploads ?

  8. #8
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    412
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juin 2005
    Messages : 412
    Par défaut
    Salut,
    Oui c'est vraiment domage pour le framework mais cet ete je me pencherai sur la question ca a l'air interressant et pas si sorcié que ca.
    Pour mon upload j'utilise le control fileupload et un code tout simple qui me test l'extension de mon fichier et qui me le renome. dont en voici une partie.

    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
    16
    17
    18
    19
    20
    21
    22
    If OEUVRE_IMAGE.HasFile Then
                        Dim fileExt As String
                        fileExt = System.IO.Path.GetExtension(OEUVRE_IMAGE.FileName)
                        If (fileExt = ".JPG") Or (fileExt = ".GIF") Or (fileExt = ".PNG") Then
                            Try
     
                                Dim NomPhoto As String = OEUVRE_IMAGE.PostedFile.FileName
                                Dim NomPhotoFinal As String = FichierPhoto & System.IO.Path.GetExtension(NomPhoto)
                                OEUVRE_IMAGE.PostedFile.SaveAs(MonChemin.Chemin & "/galerie/" & Request.QueryString("galerie_id") & "/" & NomPhotoFinal)
                                NomUploadImage = NomPhotoFinal
     
                                ContentUploadImage = OEUVRE_IMAGE.PostedFile.ContentType
                            Catch ex As Exception
                                LblErreurImage.Text = "Erreur : " & ex.Message & "<br>"
                            End Try
                        Else
                            LblErreurImage.Text = "Seul les .jpg sont autorisés<br>"
                        End If
                    Else
                        NomUploadImage = FichierPhoto
                        ContentUploadImage = OEUVRE_IMAGE.PostedFile.ContentType
                    End If
    Y'a til une methode plus complete?

    Sinon, si j'ai bien compris le web.config je peut le réecrire comme si j'ecrivai un fichier texte?

  9. #9
    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
    Sur le web.config : fait tout de même trés attention; Certes c'est un fichier texte, mais il faut être trés attentif à ce que tu mets dedans, la syntaxe reste trés importante.

    Sur ton morceau de code, pourquoi pas, j'aurais pas fait comme ça, mais si ça fonctionne...
    Sinon, pour ton souci de taile de fichier, tu peux la tester directement dans ton code avec une propriété de FileUpload.
    Regarde un truc dans la doc qui fait :
    ' Get the length of the file.
    fileLen = FileUpload1.PostedFile.ContentLength
    ça te permet de faire un test et de gérer la taille des fichier directement dans le code.
    Ensuite, tu peux soit fixer la taille max dans le code, soit faire appel à un paramettre de type numérique (assez gros car les octets ça va vite) que tu irai chercher dans le web.config ou un fichier XML ou un autre truc (la BDD par exemple)

    Sinon, pour les histoires de FrameWork Perso, reviens vers moi par mail quand tu y sera.

    @+

  10. #10
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    412
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juin 2005
    Messages : 412
    Par défaut
    Merci beaucoup zooffy. C'est en fait ce que je cherchait, pouvoir tester la taille avant l'upload
    J'ai plus qu'a récupéré la valeur dans mon fichier texte.

    Et merci pour ta proposition de mail pour le framework, je te recontacterais sans doute a ce sujet mais comme je t'ai dit, je serai plus disponible pour me renseigner la dessus cet été.

    Sinon, une toute petite derniere question, tu dit que tu n'aurai pas géré l'upload de cet maniere, comment ty serai tu pris, et qu'est ce qui ne va pas dans mon code?

    Merci a tous et bonne continuation

    Maël

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

Discussions similaires

  1. [Web.config] credentials
    Par diaboloche dans le forum ASP.NET
    Réponses: 22
    Dernier message: 08/11/2005, 19h02
  2. [WebForms][Web.config] customErrors
    Par diaboloche dans le forum Général Dotnet
    Réponses: 2
    Dernier message: 26/10/2005, 13h13
  3. [WebForms][Web.config] Stocker les chaine de connexion
    Par bossun dans le forum Général Dotnet
    Réponses: 15
    Dernier message: 19/08/2005, 15h34
  4. [CR][ASP.Net]Connection base de données / web.config
    Par Dozer71 dans le forum SAP Crystal Reports
    Réponses: 7
    Dernier message: 10/05/2005, 08h41
  5. [C#] Section appSettings du fichier Web.config
    Par pbo dans le forum ASP.NET
    Réponses: 2
    Dernier message: 01/02/2005, 10h12

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