Bonsoir à tous,
voilà, j’ai un petit soucis.
J’ai un site qui est assez immense et entièrement en ASP normal (vbscript). Mais voilà pour une partie particulière je dois utiliser de l’ASP.Net (C#).
Le truc, c’est que c’est un “script” qui doit être executé à chaque fois qu’une certaine page est vue. Cette page est en ASP normal et je ne peux me permettre de la refaire tout en ASP.Net, cela serait bien trop long.
Donc bref, comment “executer” une page ASP.net à partir d’une page ASP ? Je n’ai pas besoin de retour, seulement l’executer comme si l’utilisateur l’ouvrait dans un browser. J’ai essayé pas mal de trucs mais jusque là, aucun résultat.
Merci d’avance!
Nicjac. Ce message a été édité par Nicjac le 14/03/2004 Ce message a été édité par Nicjac le 14/03/2004
L’appeller c’est simple…
Du moment que t’as le framework .NET installé tu peux appeller une page aspx à partir de n’importe quoi…
Mais le plus important est que même pour une page aspx tu dois créer une application ASP.NET, avec ce qu’il suit… un web.config, un gloabl.asax, la dll…
Tu peux pas juste développer la page et la mettre dans ton site pour que cela fonctionne…
Oui je n’étais pas assez clair.
Je veux que la page soit appelée “automatiquement”. En ASP on peut faire un include et le code de la page est interprété en même temps que la page qu’on est entrain de lire.
Mais entre ASP et ASP.Net cela ne fonctionne pas. Je voudrais que l’utilisateur arrive sur ma page asp et que la page aspx soit automatiquement appelée sans que l’utilisateur ait à cliquer sur un lien. Le mieux ce serait que ce soit le cas avant que la page soit chargée, j’ai pensé à faire une popup invisible ou un truc du genre mais j’aimerais le faire “proprement”.
Ou alors tu veux vraiment faire quelque chose de particulier… Mais j’ai un peu de mal à saisir alors (oui je me fais vieux, il est même pas tard)
Si tu veux appeller ta page ASPX pour recupérer un résultat et le traiter dans ta page ASP d’origine, à part te trimballer par des redirections… Ce message a été édité par Xas le 15/03/2004
Une IFRAME cachee, tu recup son contenu en javascript quand elle a fini de charger et tu crache son contenu la ou il faut a ce moment la. C’est pas tres catholique mais ca va marcher. C’est du cote client. Sinon mega bourrin du cote serveur tu cree une requete ASP, tu tapes en requete HTTP sur ta pages ASPX et tu inclus le resultat la ou tu veux en ASP.
Sinon… hummm… ptet en passant par COM tu as moyen d’hoster un ascx dans une page ASP mais je pense pas que ca soit ni trivial, ni supporte. Demande a boudin il pourra surement te dire avec plus de certitude.
Bon je vais être plus clair =)
J’ai une page ASP qui existe depuis quelques années. Elle gère plein de chose et je ne veux pas toute la refaire en ASP.net
Je dois ajouter une fonctionnalité qui ne peut se faire qu’avec une page ASP.Net. Je voudrais, depuis la page ASP, executer la page ASP.net. Aucun retour n’est nécessaire. Je veux juste que le script soit lancé A CHAQUE FOIS QUE L’UTILISATEUR OUVRE MA PAGE ASP ( donc ASP, pas ASP.net ).
Exactement comme si l’utilisateur l’ouvrait dans son navigateur mais je voudrais que ça soit automatique.
Tu peut faire ca très simplement en utilisant le XML DOM: tu crée un objet XmlDocument, et tu fait un load avec l’url de ta page aspx. Si ta page aspx écrit du xml dans response, l’objet XmlDocument contiendra les infos retournées, sinon il génerera une erreur que tu pourra juste ignorer si tu veux faire vraiment simple. De toute maniere, la requette aura été faite. Le code dit ressembler a ca
Le code n’est certainement pas correct, l’asp etant loin derriere moi, mais c’est le principe.
La suggestion de GloP de passer par COM semble jouable, mais comme il dit, ce n’est pas trivial.
L’idée est d’exposer ton composant .NET sous forme d’objet COM. Une fois ceci fait, tu peux l’instantier depuis ASP.
Le problème est si cet objet a besoin d’accéder à des objets du contexte ASP comme Response. C’est pas trop fait pour, et tu risques des problèmes de Marshalling.