2012-09-08 3 views
0

Lets suppose que j'ai la structure de fichier suivant, dont les 4 premiers sont des dirs virtuels:ASP classique comprend virtuel

1/2/3/4/5/6/7/8 

Est-il possible, à partir d'un fichier dans le répertoire 8, afin d'inclure un fichier dans le répertoire 4 , en utilisant quelque chose comme le suivant?

<!-- #include virtual="/4/5/6/a.asp" --> 

Notez que je n'ai pas 8 niveaux de répertoires - ai-je fait seulement 3 au format /ab/abCore/includes.asp, /ab/ab123/default.asp,/ab/AB123/ajax/ab.asp, /ab/ab123/actions/create.asp (peut avoir plus de niveaux sous peu) et aimerait utiliser les mêmes includes dans default.asp et create.asp. La seule façon que je peux trouver est d'utiliser 'fichier' avec '../' une ou plusieurs fois. ab est un répertoire virtuel mais abCore et ab123 ne le sont pas. J'ai besoin de référencer le répertoire virtuel 'ab' de tous les fichiers dans les répertoires de ce répertoire. J'utilise juste 8 dans mon exemple simplement pour mieux expliquer ma situation. Notez que j'ai un contrôle total sur IIS, en définissant les répertoires virtuels, etc.

Si ce n'est pas très clair alors s'il vous plaît dites (plutôt que downvoting) et je vais essayer de reformuler.

+0

pas sûr de comprendre, mais vous pouvez utiliser ../ aussi longtemps que vous cochez la case « Autoriser chemin parent » dans votre IIS mise en cela vous permettra d'obtenir le dossier parent à l'aide comprend virtuel. – Mortalus

+0

Salut Mortalus, oui je sais utiliser ../, et c'est ce que j'utilise actuellement, mais ce que je voudrais faire c'est utiliser exactement les mêmes inclus pour toutes les pages, ne pas avoir à ajouter un extra ../ pour chaque sous-répertoire. Je * pense * avoir trouvé une solution .. Je viens de créer un répertoire virtuel appelé 'ab' dans le dossier racine afin que je puisse utiliser/ab/abCore. Fondamentalement, le répertoire ab original n'est pas le dossier supérieur - il ressemble plus à un/b/c/ab. c a son propre web.config et global.asa que je pensais ne pas affecter 'ab' si c'était dans la racine du web, mais il semble bien fonctionner :) – ClarkeyBoy

+0

Je pense que la réécriture d'URL rendrait votre vie beaucoup plus facile. –

Répondre

0

Oui, cela peut être fait. Supposons qu'il existe un fichier test1.asp dans le dossier f1 et que vous voulez l'inclure dans un fichier qui se trouve dans le chemin f1/f2/f3. Il suffit que vous devez écrire le code comme

<!--#include file = "..\..\test1.asp"--> 

Voici donc votre réponse. Votre code devrait être comme

<!--#include file = "..\..\..\..\a.asp"-->