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 :

Ajouter un paramètre à une méthode POST


Sujet :

ASP.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2015
    Messages
    65
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

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

    Informations forums :
    Inscription : Décembre 2015
    Messages : 65
    Par défaut Ajouter un paramètre à une méthode POST
    Bonjour,
    Je travail actuellement sur un service web que je viens interroger via une méthode POST, celle ci exécute des requête sql.
    Dans un soucis de Timeout, je cherche à passer le nom de la procédure sql à exécuter en paramètre de ma méthode POST, mais je ne sais pas du tout comment faire.
    Quelqu'un peut-il me donner des éléments de lancement dans la résolution de mon problème ?

    Merci d'avance.

  2. #2
    Membre Expert Avatar de jopopmk
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2011
    Messages
    1 856
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

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

    Informations forums :
    Inscription : Mars 2011
    Messages : 1 856
    Par défaut
    Salut,

    je suis pas sûr de comprendre le "paramètre de la méthode POST".
    Si tu dois poster des info pour que ton WS te réponde, pourquoi ne pas y ajouter l'info qu'il te manque ?
    Tu dois également pouvoir ajouter l'info dans une entête HTTP (comme pour les SOAPAction).
    Enfin, tu peux gérer plusieurs endpoint (pour chaque opération/procédure) mais qui pointeront sur le même code de réponse (paramétrage du serveur nécessaire), tu auras alors l'info dans la première entête HTTP, juste après la méthode utilisée (dans ton cas POST).

    Quoi qu'il en soit il te faudra avoir la main sur le WS.

  3. #3
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2015
    Messages
    65
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

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

    Informations forums :
    Inscription : Décembre 2015
    Messages : 65
    Par défaut
    Bonjour et merci de ta réponse,

    Je vais essayer d'être plus clair dans mon explication :

    Tout d'abord j'ai commencé par créer un contrôleur dans mon WS.
    Dans celui ci j'ai implémenté la méthode POST comme ceci :
    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
    23
    24
     
    public HttpResponseMessage Post([FromBody]string value)
            {
                if (ModelState.IsValid)
                {
                    using (AppEntities context = new AppEntities ())
                    {
                        context.Database.ExecuteSqlCommand("ProcedureA");
                        context.Database.ExecuteSqlCommand("ProcedureB");
                        context.Database.ExecuteSqlCommand("ProcedureC");
                        context.Database.ExecuteSqlCommand("ProcedureD");
                        context.Database.ExecuteSqlCommand("ProcedureE");
                        context.Database.ExecuteSqlCommand("ProcedureF");
                        context.Database.ExecuteSqlCommand("ProcedureG");
                    }
     
                    return Request.CreateResponse(HttpStatusCode.OK);
                }
                else
                {
                    return Request.CreateErrorResponse(HttpStatusCode.BadRequest,
                        ModelState);
                }
            }
    J'ai ensuite paramétré un Scheduler sur Microsoft Azure qui va interroger cette méthode POST toute les 15 minutes, et c'est là que je rencontre mon soucis : Mes procédures étant assez complexes, le WS renvoi une erreur de timeout, le timeout de base pour azure étant de 60 secondes.

    Je cherche donc à exécuter l'ensemble des mes procédures tout en évitant un Timeout exception.

  4. #4
    Membre émérite
    Homme Profil pro
    Architecte technique
    Inscrit en
    Septembre 2005
    Messages
    462
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 462
    Par défaut
    Salut,

    La classe Database a une propriété CommandTimeOut

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DbContext.Database.CommandTimeout = 180;
    A vérifier si tu peux modifier la valeur juste pour ta requête...

  5. #5
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2015
    Messages
    65
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

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

    Informations forums :
    Inscription : Décembre 2015
    Messages : 65
    Par défaut
    Merci de ta réponse,
    Tu pense que le timeout viens de la base et pas du web service ?

  6. #6
    Membre émérite
    Homme Profil pro
    Architecte technique
    Inscrit en
    Septembre 2005
    Messages
    462
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 462
    Par défaut
    Ah oui désolé j'ai peut être répondu un peu vite.

    Donc j'ai une autre question ton WebService c'est du WCF ou du WebApi ?

Discussions similaires

  1. ajouter un paramètre à une requête
    Par Cram_N7 dans le forum Struts 2
    Réponses: 1
    Dernier message: 24/08/2009, 11h22
  2. Problème de passage de paramètres à une méthode
    Par azimut01 dans le forum VB.NET
    Réponses: 0
    Dernier message: 26/02/2009, 21h38
  3. Action - passage de paramètres à une méthode
    Par burhud dans le forum Struts 2
    Réponses: 3
    Dernier message: 16/10/2007, 10h12
  4. Ajouter deux paramètres à une action dans un lien.
    Par Alexandre T dans le forum Struts 1
    Réponses: 4
    Dernier message: 27/08/2007, 11h39
  5. Réponses: 1
    Dernier message: 10/10/2006, 15h14

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