2011-12-06 11 views
0

이상한 문제가 있으며 해결 방법을 모릅니다. 사용자가 관리자 인 경우.NET 페이지는 Firefox에서는 작동하지만 IE에서는 작동하지 않습니다.

if (Page.User.IsInRole("Admin")) 
{ 
    ButtonEdit.Visible = true; 
} 

기본적으로, 나는 (그렇지 않으면 숨겨져) 편집 버튼이 표시됩니다 :

나는 기본적으로 서버 측에서 Page_Load 이벤트에서이 같은 무언가를 웹 페이지가 있습니다. 이 개념은 하나의 단일 페이지를 제외하고 웹 응용 프로그램의 모든 곳에서 작동합니다. 코드 분할을 넣었고이 페이지에서 Page.User.IsInRole ("Admin")이 항상 false를 반환한다는 것을 알았습니다.

더 혼란스러운 점은 모두 Firefox에서 잘 작동합니다. 문제가있는 페이지의 코드는 예상대로 수행됩니다.

따라서, 사용자, 관리자, 즉이 문제 (지금까지 단 한) 경험을 sumarize하는 것은 다음과 같은보고 :

  • Test1을 웹 서버 : IE와 파이어 폭스
  • Test2를에 편집 버튼 쇼 웹 서버 : IE 없음 편집 버튼 만 편집 버튼을 파이어 폭스에
  • 가 : IE와 파이어 폭스
  • 생산 웹 서버에 편집 버튼 쇼

내가 주목 한 유일한 사실은 CSS가 언젠가 똑같은 페이지에서 깨지기 쉽다는 것이다. (너무 자주는 아니지만 재현하기가 어렵다.) CSS 스타일이 적용되지 않은 것처럼 html 요소가 보인다. 닫는 태그 또는 따옴표 또는 IE가 충돌하는 원인이 누락 된 것으로 의심됩니다. 범인을 찾는 방법을 모르겠다. 페이지에 자바 스크립트 또는 기타 오류가 없습니다. 페이지 코드는 꽤 크고 한 줄씩가는 것은 피하려고하는 옵션입니다.

Visual Studio 2010에서 HTML의 유효성을 검사 할 수있는 방법이 있으며 모든 태그가 올바르게 작성되었는지 확인하십시오.

의견을 보내 주셔서 감사합니다.

감사합니다.

+0

생산 부하 분산을 실행 :

그것으로 대체되어야 하는가? – NotMe

답변

0

당신의 말은 저에게도 이상합니다.

먼저 파일의 Ctrl + K, Ctrl + D를 눌러 모든 들여 쓰기를 다시 포맷하고 모양이 좋아 보이시기 바랍니다. 괜찮 으면 아마 HTML이 괜찮을 것입니다.

그렇지 않은 경우 코드의 일부를 제거하고 다시 렌더링하여 문제를 찾으십시오. 도움이 될 또 다른 점은 문서의 태그 시작을 클릭하면 시작과 끝 모두 굵게 표시된다는 것입니다. VS가 종료 태그를 굵은 글씨로 표시하지 못하면 이것은 좋은 시작일 수 있습니다.

그리고 한 번 좀 시간이 걸렸 내가 아는 한 알려진 오류가 :

스크립트 태그를 즉시 닫을 수 없습니다. 즉

<script type="text/javascript" scr="someurl" /> 

이 잘못되어 렌더링에 실패하는 브라우저가 많습니다.

<script type="text/javascript" scr="someurl" ></script> 
+0

아니요. 나는 줄 단위로 보았다. 나는 IE에서 CSS 문제를 해결할 수 있었고 Page.User.IsInRole ("Admin")은 항상 false를 반환하는 문제를 해결했습니다. 서버에 문제가 있다고 생각합니다. 일부 패치 또는 뭔가가 누락되었습니다. 이 IE 넌센스를 어떻게 설명 할 지 모르겠다. 사용자가 IE7을 사용 중입니다. 나는 그녀를 IE8로 업그레이드했다. 여전히 동일합니다. – bobetko

관련 문제