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 :

Tutariel Rudiments aspx


Sujet :

ASP.NET

  1. #21
    Rédacteur
    Avatar de lutecefalco
    Profil pro
    zadzdzddzdzd
    Inscrit en
    Juillet 2005
    Messages
    5 052
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : zadzdzddzdzd

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 052
    Points : 8 734
    Points
    8 734
    Par défaut
    Si tu veux effectuer une action à chaque requête entrante, regarde du côté du global.asax et de l'événement BeginRequest

  2. #22
    Membre émérite
    Profil pro
    Mangeur de gauffre
    Inscrit en
    Octobre 2007
    Messages
    4 413
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Mangeur de gauffre

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 413
    Points : 2 498
    Points
    2 498
    Par défaut
    Bonjour

    J'explore un peu les concept et au plus j'avance au plus je me demande pourquoi ce a quoi je pensais ne peut pas marcher simplement

    En gros j'imaginais remplacer WebForm1.aspx par un truc du genre :

    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
    <%@ Page Language="C#" AutoEventWireup="true" %>
     
     
    <script language="C#" runat=server>
    // Mon code
    // Mais je ne sais pas comment acceder la commande http utilisee
    </script>
     
     
    <%--Rappel de WebForm1.aspx avec la commande originale
    // j'ignore la syntaxe
    --%>
     
    // Ou bien
     
    <!--#include file="WebForm1.asp"-->
    // Pour l'include je n'y crois pas trop car je vais mixer du vb et du C#
    « Ils ne savaient pas que c'était impossible, alors ils l'ont fait ». (Twain)

  3. #23
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

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

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 749
    Points
    39 749
    Par défaut
    Le truc, c'est que la classe WebForm1 est déjà définie dans le code-behind dont tu n'as pas les sources et qui est compilé dans la DLL. La classe générée par le compilateur aspx à partir du fichier WebForm1.aspx hérite de la classe WebForm1, donc tu peux peut-être overrider certaines méthodes, mais ça va être un peu galère... Tu as vraiment pas moyen de récupérer les sources ??

  4. #24
    Membre émérite
    Profil pro
    Mangeur de gauffre
    Inscrit en
    Octobre 2007
    Messages
    4 413
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Mangeur de gauffre

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 413
    Points : 2 498
    Points
    2 498
    Par défaut
    Tu as vraiment pas moyen de récupérer les sources ??
    Impossible !
    Le gros malin qui m'a bricolé ca est dans la nature

    Je t'explique
    Sur le serveur J'ai un module qui tourne dans Inetpub
    Ce sont des dll vb et cette page principale WebForm1
    La plupart des requetes exterieures http appellent cette page WebForm1
    Plusieurs traitement sont fait et en definitive des fichiers txt sont pondu en append avec le contenu http original reformaté (un fichier par client)

    Un autre gros malin (mais il a laissé les sources celui-la) plutot que de s'organiser avec le premier s'est contenté d'écrire un truc de son coté en Csharp et de faire du polling de lecture des fichier pondu par le premier

    Je remet de l'ordre dans tout ce bingz et une premiere chose que j'aimerais faire avant de tout réecrire, c'est de supprimer ce polling et intercepter la requete http a la source sans perturber le traitement lancé par Webform1 qui a encore une utilité ailleurs !
    « Ils ne savaient pas que c'était impossible, alors ils l'ont fait ». (Twain)

  5. #25
    Membre émérite
    Profil pro
    Mangeur de gauffre
    Inscrit en
    Octobre 2007
    Messages
    4 413
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Mangeur de gauffre

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 413
    Points : 2 498
    Points
    2 498
    Par défaut
    Pour info je repete quand meme que Webform1.aspx actuelle ne contient QUE ceci, pas une virgule de plus

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <%@ Page Language="vb" AutoEventWireup="false" Codebehind="WebForm1.aspx.vb" Inherits="findMe.WebForm1"%>
    Dans ma petite tete, je pense ceci

    1- C'est Webform1.aspx qui déclanche ses traitements dans findme
    2- la commande http n'a pas de connaissance de ce que webform1 va faire

    DONC

    Pourquoi on ne peux pas truquer en faisant une AUTRE webform1.aspx qui appelle une fonction csharp dans une Autre dll et meme un AUTRE namespace
    Et ensuite on rappelle webform1 comme si la requete venait en http ?
    « Ils ne savaient pas que c'était impossible, alors ils l'ont fait ». (Twain)

  6. #26
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

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

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 749
    Points
    39 749
    Par défaut
    tu peux toujours regarder le code de la DLL avec Reflector...

  7. #27
    Membre émérite
    Profil pro
    Mangeur de gauffre
    Inscrit en
    Octobre 2007
    Messages
    4 413
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Mangeur de gauffre

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 413
    Points : 2 498
    Points
    2 498
    Par défaut
    Mais je n'ai pas besoin du code de la DLL !

    Je veux juste pecher la commande http avant qu'elle ne soit passée a WebForm1 pour ensuite la repasser dans son integralité pour eviter de faire du polling pour devoir la retrouver Apres coup dans les log de la DLL

    Meme si je n'ai jamais fait ni de site web ni d'aspx je suis de plus en plus convaincu que ce que je veux faire est tout a fait possible asser facilement

    Quand j'aurai trouvé et JE VAIS trouer je vous expliquerai comment j'ai fait !
    « Ils ne savaient pas que c'était impossible, alors ils l'ont fait ». (Twain)

  8. #28
    Rédacteur
    Avatar de lutecefalco
    Profil pro
    zadzdzddzdzd
    Inscrit en
    Juillet 2005
    Messages
    5 052
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : zadzdzddzdzd

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 052
    Points : 8 734
    Points
    8 734
    Par défaut
    Bah au lieu d'appeler webform1, faut appeler webform2.
    Dans webform2, tu fais ton traitement puis à la fin de celui-là, tu fais un response.redirect(webform1)

  9. #29
    Membre émérite
    Profil pro
    Mangeur de gauffre
    Inscrit en
    Octobre 2007
    Messages
    4 413
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Mangeur de gauffre

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 413
    Points : 2 498
    Points
    2 498
    Par défaut
    Et bien voila !

    C'est ce que j'essaye d'expliquer depuis ce matin (sans doute tres mal)

    Et donc pour avoir un petit coup de pouce je voulais juste savoir la syntaxe qu'aurait ma WebForm2 jute pour ecrire la cammande http dans un fichier par exemple et pui rappeler Webform1 avec cette meme commande


    Avec ca je suis parti pour l'aventure !
    « Ils ne savaient pas que c'était impossible, alors ils l'ont fait ». (Twain)

  10. #30
    Rédacteur
    Avatar de lutecefalco
    Profil pro
    zadzdzddzdzd
    Inscrit en
    Juillet 2005
    Messages
    5 052
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : zadzdzddzdzd

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 052
    Points : 8 734
    Points
    8 734
    Par défaut
    Pour l'url: var url = Request.Url.AbsoluteUri;
    Puis, Response.Redirect("WebForm1.aspx");

  11. #31
    Membre émérite
    Profil pro
    Mangeur de gauffre
    Inscrit en
    Octobre 2007
    Messages
    4 413
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Mangeur de gauffre

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 413
    Points : 2 498
    Points
    2 498
    Par défaut
    Bonjour LuteceFalco


    J'essaye toujours de comprendre tres vite avec mes connaissance encores nulles en ASPX.
    Toutefois si je reprends l'exemple que tu m'a montré par rapport a ce que j'ai essayé d'expliquer, ta solution (a mon avis) ne pourrait pas marcher


    Pour l'url: var url = Request.Url.AbsoluteUri;
    Puis, Response.Redirect("WebForm1.aspx");
    A mon avis (mais je n'ai certainement pas ton expérience) je devrais plutot faire un truc comme ca

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    // 1 : recuperer l'url utilisé
    var url = Request.Url.AbsoluteUri;
     
    // 2 : faire mon traitement avec les parametres de cet url
     
    // 3 : finalement rediriger vers la webform1 qui s"appelle maintenant Webform2
    //     MAIS avec les parametres originaux
    //    
     
    // Ceci ne peux pas marcher evidemment puisque ce n'est plus webform1
    Response.Redirect("WebForm1.aspx"); 
     
    // Ceci NON PLUS (a mon avis) puisque je ne donne pas les parametres
    Response.Redirect("WebForm2.aspx");
    Donc je ne sais pas si je dois faire un Replace dans l'url capturé ou
    s'il y a une autre maniere de faire
    « Ils ne savaient pas que c'était impossible, alors ils l'ont fait ». (Twain)

  12. #32
    Membre expérimenté Avatar de Arthis
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    1 265
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : Italie

    Informations forums :
    Inscription : Octobre 2003
    Messages : 1 265
    Points : 1 352
    Points
    1 352
    Par défaut
    Je pense que ce que lutecefalco a tenté de t'expliquer c'est cela: Tous tes traitements appellent la webform1 donc tu vas dans cette apge et tu la reecris pour qu'elle n'aille pas pecher son code behind :

    webform1.aspx :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <%@ Page Language="vb" AutoEventWireup="false" Codebehind="WebFormAjoutee.aspx.vb" Inherits="monnamespace.WebFormAjoutee"%>
    Tu as donc une autre classe qui va derivée de Page :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    namespace monnamespace
    {
     
        public class WebFormAjoutee :Page
       {
           PageLoad
          {
              tes traitements...
              //ensuite redirect vers une autre page
              server.transfer ou repsonse.redirect au choix (MAdeuxiemePAge.aspx)
           }
        }
    }

    MAdeuxiemePAge.aspx:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <%@ Page Language="vb" AutoEventWireup="false" Codebehind="WebForm1.aspx.vb" Inherits="findMe.WebForm1"%>
    Je ne sais pas si cela résoudra ton probleme, et je t'avouerais que je n'ai jamais fait de bricolage comme ca mais je pense que cela devrait fonctionner...

    Bon courage en tout cas,

  13. #33
    Membre expérimenté Avatar de Arthis
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    1 265
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : Italie

    Informations forums :
    Inscription : Octobre 2003
    Messages : 1 265
    Points : 1 352
    Points
    1 352
    Par défaut
    Bien evidemment dans la redirection , tu lui rebalances toutes les infos qui avaient amenés l'appel initial.

    tu peux faire ca grace à request.form ou request.querystring.

  14. #34
    Membre émérite
    Profil pro
    Mangeur de gauffre
    Inscrit en
    Octobre 2007
    Messages
    4 413
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Mangeur de gauffre

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 413
    Points : 2 498
    Points
    2 498
    Par défaut
    Merci a tous

    Je vais chipoter a ca ca me permettra d'apprendre beaucoup de choses d'un coup

    Et je donne le feed-back
    « Ils ne savaient pas que c'était impossible, alors ils l'ont fait ». (Twain)

  15. #35
    Membre émérite
    Profil pro
    Mangeur de gauffre
    Inscrit en
    Octobre 2007
    Messages
    4 413
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Mangeur de gauffre

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 413
    Points : 2 498
    Points
    2 498
    Par défaut
    Bonjour

    La solution expliquée par luteccefalco et Arthis est bien conceptuellement ce que je veux faire

    Je mais reflechis encore au code nécessaire

    Sachant que
    1

    Webform1.aspx se trouve sur //InetPub/wwwroot/findme2
    La dll de Webform1 se trouve sur //InetPub/wwwroot/findme2/bin

    Deja je ne comprends pas comment Webform1.aspx sais ou se trouve sa dll ?

    2
    Le traitement que je veux intercaller va se trouver dans une autre app web qui est ailleurs sur le meme serveur sur

    //memopas/web

    Je pense donc que le plus simple sera d'ajouter du code inline dans ma pseudo Webform1 que je laisserai sur //InetPub/wwwroot/findme2

    Mais je ne vois pas comment dans ce code inline je peux faire reference a des dll qui sont dans //memopas/web/bin

    En fait mon gros probleme de compréhension c'est la communication entre les pages et entre projet sur un site web et la définition des chemins d'acces
    « Ils ne savaient pas que c'était impossible, alors ils l'ont fait ». (Twain)

  16. #36
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

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

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 749
    Points
    39 749
    Par défaut
    Citation Envoyé par olibara Voir le message
    Deja je ne comprends pas comment Webform1.aspx sais ou se trouve sa dll ?
    En ASP.NET les DLL sont toujours dans le répertoire bin de l'application

    Citation Envoyé par olibara Voir le message
    2
    Le traitement que je veux intercaller va se trouver dans une autre app web qui est ailleurs sur le meme serveur sur

    //memopas/web

    Je pense donc que le plus simple sera d'ajouter du code inline dans ma pseudo Webform1 que je laisserai sur //InetPub/wwwroot/findme2

    Mais je ne vois pas comment dans ce code inline je peux faire reference a des dll qui sont dans //memopas/web/bin

    En fait mon gros probleme de compréhension c'est la communication entre les pages et entre projet sur un site web et la définition des chemins d'acces
    Ce serait plus simple de tout mettre dans la même application... pourquoi tu ne mets pas simplement les fichiers de //memopas/web dans //inetpub/wwwroot/findme ?

  17. #37
    Membre émérite
    Profil pro
    Mangeur de gauffre
    Inscrit en
    Octobre 2007
    Messages
    4 413
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Mangeur de gauffre

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 413
    Points : 2 498
    Points
    2 498
    Par défaut
    Bonjour TomLev

    Ce serait plus simple de tout mettre dans la même application... pourquoi tu ne mets pas simplement les fichiers de //memopas/web dans //inetpub/wwwroot/findme ?
    Oui j'avais pensé a ca mais j'ai ici deux application distincte dont je ne maitrise pas la partie des dll qui se trouvent sur //inetpub/

    Tandis que j'ai heurusement la main sur celle de //memopas/web

    Donc j'aimerais ne pas tout melanger tout de suite et d'ailleurs la partie tournant actuellement sur inetpub devra disparaitre un jour
    En plus mon manque d'experience dans la redirection des acces sur un site web me bloque un peu pour le moment

    Et a nouveau j'ai du mal a croire qu'on ne peux pas référencer une dll par son chemin en inline asp. Mais j'avoue je ne sais pas comment

    J'espere que dans quelque jours j'aurai quitté ce cauchemard du débutant

    Sur un autre plan je suis un peu amusé du niveau d'aide que l'on peut recevoir en fonction des Forum

    1- Sur C# c'est génial il y a une communauté tres active et conviviale, on se tutoie les idées s'échangent tres vite
    2- Sur SQL, c'est beaucoup plus protocolaire, on se vouvoie et l'on percoit une certaine distance !
    3- Sur ASP j'ai l'impression d'etre un schtroumpf chez les éléphant, circulez SVP !
    « Ils ne savaient pas que c'était impossible, alors ils l'ont fait ». (Twain)

  18. #38
    Membre émérite
    Profil pro
    Mangeur de gauffre
    Inscrit en
    Octobre 2007
    Messages
    4 413
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Mangeur de gauffre

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 413
    Points : 2 498
    Points
    2 498
    Par défaut Info aux spécialistes
    Bonjour

    A force de bricolage je pense avoir touvé le bon systeme

    Il suffit de bricoler un script VB dans la page WebForm1.aspx pour forker la requete vers ma page a moi !


    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
    <%@ Page Language="vb" AutoEventWireup="false" Codebehind="WebForm1.aspx.vb" Inherits="findMe.WebForm1"%>
     
    ' Code ajouté :
     
    <%
        Dim getVariables As New NameValueCollection
        getVariables = Request.QueryString
        Dim getInfo As String = "imei=" + getVariables.Get("imei") + "&rmc=" + getVariables.Get("rmc")
        Dim uri As New Uri("http://192.168.1.88/memopas/getDevice.aspx?" + getInfo)
        'Response.Write("1." + uri.ToString())
        If Uri.Scheme = Uri.UriSchemeHttp Then   
            'Response.Write("2." + uri.ToString())
            Dim client As New System.Net.WebClient()
            client.Headers.Add("user-agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; .NET CLR 1.0.3705;)")
            client.OpenRead(uri)
            'Response.Write("3." + uri.ToString())
        End If
    %>
    « Ils ne savaient pas que c'était impossible, alors ils l'ont fait ». (Twain)

Discussions similaires

  1. [VB.NET] Imprimer une page aspx
    Par sehing dans le forum ASP.NET
    Réponses: 3
    Dernier message: 22/04/2005, 14h44
  2. [HVMenu] problème dans les pages ASPX (urgent svp)
    Par hatembr dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 13/01/2005, 09h37
  3. [ASPX][C#] afficher l'explorateur de champs
    Par inesfonfon dans le forum SDK
    Réponses: 1
    Dernier message: 15/09/2004, 15h49
  4. [CR 9] [ASPX][C#]connexion via code
    Par nannous dans le forum Connectivité
    Réponses: 3
    Dernier message: 20/08/2003, 15h12

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