문제

ASP.net MVC 웹 사이트에서 MembershipProvider를 변경했는데 이제 로그인 페이지의 스타일시트가 올바르게 참조되지 않습니다.아래는 이유가 될 수 있는 경우 내 web.config에 있는 양식 태그의 사본입니다.name 및 timeout 속성을 제외하면 새 프로젝트에서 생성된 것과 동일해 보입니다.

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

지금 페이지를 방문하면 CSS의 링크 태그는 다음과 같습니다.

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

그럴 때 ~해야 한다 다음과 같이 보입니다:

<link href="../../Content/Site.css" rel="stylesheet" type="text/css" />
도움이 되었습니까?

해결책 2

감사합니다 Ian Oxley. 그래도 문제는 resolveclienturl로 해결되지 않았습니다.

web.config 파일을 처리해야했습니다. 나는 다음과 같이 보이는 코드를 가지고있었습니다.

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

메인 아래에 위치 요소를 추가했으며 누구나 그 내용을 볼 수 있다고 말했고 지금은 작동합니다. CSS 파일과 같은 파일은 이전에 승인 될 때까지 볼 수 없었습니다. 이제 고정되었습니다.

이것이 내가 추가 한 것입니다.

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

다른 팁

저는 아직 ASP.NET MVC를 사용해 본 적이 없지만 다음을 사용해 볼 수 있습니다. 클라이언트 URL 확인 CSS에 대한 href를 작성할 때:

<link href="<%= ResolveClientUrl("../../content/Site.css") %> rel="stylesheet" type="text/css" />
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top