2010-02-08 2 views
5

사용자 지정 보안을 사용하고 있습니다 (멤버 자격 공급자 없음). 사용자가 로그인 한 후 ASPNETDB.MDF가있는 "App_Data"폴더가 로컬 컴퓨터에서 자동으로 생성됩니다. 원격 서버에 배포하면 App_Data의 보안 제약으로 인해 작동하지 않습니다.App_Data없이 Asp.net mvc를 사용할 수 없습니다.

이 폴더를 삭제하고 응용 프로그램을 다시 시작한 경우에도 Membership/Roles/Profile 공급자에 대한 모든 참조가 제거 되었더라도 다시 작성됩니다 ... 코드에 사용 된 내용이 없습니다 ... 일반 일반 FormsAuthentication.

어떻게 이런 일이 발생하고 있습니까?

+0

web.config 일 수 있습니까? 관련 구성 데이터는 어떤 모양입니까? – ziya

+0

내 web.config를 추가했습니다. 여기에 문제가 있다고 생각하지 않습니다! –

+0

우연히 "웹 사이트 관리 도구"가 내장되어 있습니까? – mxmissile

답변

1

회원 자격/역할/프로필 서비스가 사용되는 코드의 위치가 여전히 있어야합니다. 공급자가 지정되지 않은 경우 Asp.Net은 .mdf 파일을 만드는 기본값 =>을 사용합니다.

Asp.Net의 개발 환경에서 .mdf 파일을 만들 수 없게 만듭니다. 예 : 해당 App_Data에서 모든 권한을 제거하고 텍스트 파일에 넣고 ASPNETDB.MDF 또는 이와 비슷한 이름으로 변경하십시오.

이렇게하면 디버그 모드에서 충돌이 발생합니다. 그런 다음, 당신은 => 기본 제공자를 사용하는 서비스를 사용하려고하는 줄은 무엇인지 볼 수 있습니다 =>는 DB 파일을 만듭니다.

+0

오신 것을 환영합니다 ... 나는 내가 Global.asax에의 회원에 대한 참조 보호 무효를 Application_AuthenticateRequest() { 이 경우 파일을 찾을 수 ... 그것에게 일을했던 시도 –

+0

을 줄 것이다 (사용자! = null이) 회원을 .GetUser (true); } –

관련 문제