MVC 4.0 프로젝트에서 역할을 수행하려고했습니다. 엔터티 프레임 워크 연결 문자열을 사용하여 데이터베이스를 쿼리하고 업데이트 할 수 있습니다.역할 공급자에 대한 Entity Framework 연결 문자열이 잘못 되었습니까?
<add name="DataContext"
connectionString="metadata=res://*/Models.Model.csdl|res://*/Models.Model.ssdl|res://*/Models.Model.msl;
provider=System.Data.SqlClient;
provider connection string='data source=.\SQLEXPRESS;
initial catalog=Phase 2;
integrated security=True;
multipleactiveresultsets=True;
application name=EntityFramework'"
providerName="System.Data.EntityClient" />
이것은 훌륭하게 작동합니다. 내 역할 관리자를 설정하려고 할 때 문제는 내가 잘못된 연결 문자열이 오류가 발생하고 내 연결 문자열이 잘못 알려줍니다
<roleManager enabled="true">
<providers>
<clear />
<add name="AspNetSqlRoleProvider"
type="System.Web.Security.SqlRoleProvider"
connectionStringName="DataContext"
applicationName="/" />
</providers>
</roleManager>
이 나에게 말한다이다. 조사한 후에는 공급자에게 별도의 연결 문자열을 사용해야합니다. 나는 두 컨넥션 스트링을 같은 컨텍스트로 가리키는 것에 대해 어떻게 생각하는지 모르겠다.
이것은 현재 내 컨텍스트의 이름을 지정하는 방법입니다.
public DataContext()
: base("name=DataContext")
{
}
이름을 동적으로 설정하는 방법이 있습니까? 아니면이 작업을 수행 할 다른 방법을 찾아야합니까?
덕분에 신속한 응답을. 나는 이것을 시도하고 "잘못된 스키마"라인을 따라 어딘가에 오류가 발생합니다. 방금 일했는데 집에 도착했을 때 특기를 줄 수있었습니다. – Jeff
내 역할 테이블을 가지고 있다면 엔티티 프레임 워크를 사용할 사용자 지정 역할 공급자를 만들 수 있습니까? – Jeff