2013-05-17 3 views
0

저는 기술 ASP.NET MVC + Entity Framework 4 5 (DataBase First) 개발에 완전히 새로운 기술입니다. 나는 몇 시간의 연구 끝에도 해결책을 찾지 못했다는 문제가있다.Entity Framework 5 다중 데이터베이스

내 응용 프로그램에서 각 클라이언트는 로그인 후 선택되는 자체 데이터베이스가 필요합니다.

각 기본에 대한 매핑 (edmx)을 만드시겠습니까? DbContext 또는 연결 문자열을 변경해야 실행이 지속됩니까?

어디서부터 시작해야할지 모르겠습니다. 각 데이터베이스에 매핑 (edmx)을 만들고 런타임시 DbContext 또는 연결 문자열을 변경할 수 있습니까?

감사합니다. 만약

var db = new MyDbContext("NameOfConnectionStringInWebConfig"); 
+0

중복 가능성 [패스 연결 문자열 코드하는 제 DbContext (http://stackoverflow.com/questions/4805094/pass-connection-string-to-code-first-dbcontext). 또는 http://stackoverflow.com/q/7599455/861716. 또는 http://stackoverflow.com/q/12284291/861716. –

답변

0

당신은 당신의 Web.config에서 ConnectionString을의 이름으로 전달할 수 있습니다 런타임에 DB가 추가되는 다중 DB 개념이 있으므로 App.config에 연결 이름이 없으므로 DB 연결 방법이 유용합니다.

물론 app.config에 연결 이름을 추가하거나 DB 연결 방법을 시도 할 수 있습니다. 마이그레이션 주제를 다룰 때 재미있게 작동합니다.

public class MyDbContext : DbContext 
//ctor 
    public MyDbContext(string connectionName) : base(connectionName){ } 

    public MyDbContext(DbConnection dbConnection, bool contextOwnsConnection) 
     : base(dbConnection, contextOwnsConnection) { } 
0

당신은 연결 문자열 이름을 전달할 수 있습니다, 또는 DB 연결 세부 사항 (도록 SqlConnection) : 당신이 당신의 DbContext을 만들 때

관련 문제