2008-10-03 16 views
0

J'ai changé le MembershipProvider dans mon site Web ASP.net MVC, et maintenant la feuille de style pour la page de connexion n'est pas référencée correctement. Voici une copie de la balise forms dans mon web.config si cela pourrait être la raison. Il semble identique à celui généré par un nouveau projet à l'exception de l'attribut name and timeout.Est-ce que MembershipProviders dans ASP.net MVC affecte les liens de feuille de style?

<authentication mode="Forms"> 
     <forms loginUrl="~/Account/Login" name=".ADAuthCookie" timeout="10" /> 
</authentication> 

Lorsque je visite la page maintenant, la balise de lien pour le CSS ressemble à ceci:

<link href="../Content/Site.css" rel="stylesheet" type="text/css" /> 

Quand il devrait ressembler à ceci:

<link href="../../Content/Site.css" rel="stylesheet" type="text/css" /> 

Répondre

0

Merci Ian Oxley. Le problème n'a cependant pas été résolu avec ResolveClientUrl.

Il devait gérer le fichier web.config. J'avais code qui ressemblait à ceci:

<authorization> 
    <deny users="?" /> 
    <allow users="*" /> 
</authorization> 

J'ai ajouté un élément d'emplacement en dessous de la principale et dit que tout le monde pouvait voir que le contenu, et il fonctionne maintenant. Il s'avère que des fichiers comme le fichier CSS n'étaient pas visibles avant d'être autorisés auparavant. C'est maintenant réparé.

C'est ce que j'ajouté:

<location path="Content"> 
    <system.web> 
     <authorization> 
     <allow users="*" /> 
     </authorization> 
    </system.web> 
</location> 
1

refuge I » t utilisé ASP.NET MVC encore moi-même, mais vous pouvez essayer d'utiliser ResolveClientUrl lors de l'écriture de l'href pour votre CSS:

<link href="<%= ResolveClientUrl("../../content/Site.css") %> rel="stylesheet" type="text/css" /> 
+0

Je ne savais pas cette chose a commencé à exister dans .NET 2.0. Très utile! Merci. –