2010-01-16 9 views
0

Rappel rapide: Je crée une version "encadrée" de mon site qui a une page maître différente de la normale (une qui convient à l'iframing). Il est accessible par mysite.com/Framed/whatever, au lieu de mysite.com/whatever. Ceci est réécrit dans IIS à mysite.com/whatever?framed=true. Cela fonctionne bien.Remplacer le comportement dans les contrôles

Le problème que j'ai est que tous les liens sont relatifs en utilisant un ~ comme ~/Server.aspx qui fonctionne bien dans le site normal. Je dois remplacer cela au lieu de produire ../Server.aspx (comme il "devrait") il produit ../Framed/Server.aspx ou Server.aspx.

Actuellement, cela signifie que la page va revenir à sa vue normale (mystite.com/whatever2) dès que vous cliquez sur un lien, je veux continuer à rester dans mysite.com/Framed/...

Répondre

0

Tu ne veux pas vraiment » .. /Server.aspx?framed=true "? Cela pourrait être plus facile à retirer

+0

Ce serait plus facile, mais je n'en suis toujours pas sûr. Aussi: J'ai obtenu le comportement que je voulais avec un simple javascript qui réécrit la page si elle était dans un cadre. – cpf

0

~ résout à la racine de l'application, de sorte que vous puissiez créer un répertoire virtuel sous votre site principal pour votre version encadrée appelée "Framed", de sorte que "~ /" se résout à "/ Framed/". Ensuite, au lieu d'utiliser un commutateur de chaîne de requête pour sélectionner votre page maître, vous pouvez vérifier la présence de "/ Framed /" dans l'URI de demande brute.