2011-02-13 2 views
1

이전 글에서 보았 듯이 MVC와 C#을 가르치기 시작 했으므로 디자이너가 될 필요가 없어졌습니다. 개발자에게. Visual Studio에서 서버 탐색기를 사용하지 말고 web.config의 연결 문자열로 데이터베이스에 연결하기 만하면됩니다. 나는이 일을했지만 Visual Studio의 LINQ to SQL Designer는 데이터베이스 연결을 인식하거나 인식하지 못하고 디자이너를 끌어 클래스를 만들 수 없습니다. 수동으로 생성해야합니까? 아니면 누락 되었습니까?연결 문자열을 사용할 때 VS 디자이너에서 Linq To SQL 클래스를 어떻게 만듭니 까?

모든 아이디어가 적용됩니다.

건배

마크

답변

0

은 내가 디자이너 속성

1

DataContext를 클래스는 연결 문자열 매개 변수를 취하는 constructor을 가지고 내에서 연결 설정을 변경하여이 정렬 것 같아요.

0

서버 탐색기를 사용하여 클래스를 생성하고 서버, 데이터베이스, 인증 필드를 연결 문자열의 세부 정보로 채울 수 있습니다.

그런 다음 shadowfoxmi 상태에서 DataContext 클래스를 인스턴스화 할 때 연결 문자열이나 미리 설정된 SqlConnection 인스턴스를 사용하는 생성자를 사용하십시오.

개인적으로 올바른 연결 문자열, 시간 초과 등으로 이미 설정된 DataContext 인스턴스를 반환하는 단일 정적 메서드 GetDataContext()가 포함 된 정적 클래스를 선호합니다. 그런 다음 코드가 수동으로 DataContext를 인스턴스화하지 않도록합니다. 모든 인스턴스는 정적 메소드에서 가져옵니다. 이 메소드를 필요한만큼 복잡하게 만들 수 있습니다 (예 : 배포 환경 (예 : 준비, 프로덕션, 로컬 개발자)에 따라 코드가 다른 연결 문자열로 인스턴스화 할 수 있습니다.

배포 할 때 필요에 따라 서버 탐색기에서 app.config/web.config 파일에 넣는 세부 정보는 제거됩니다.

0

난 항상 같은 것을 수행하는 래퍼 만들 :

public static class DBCreator 
{ 
    public static MyDataContext Create() 
    { 
     return new MyDataContext(ConfigurationManager.ConnectionStrings["ConnName"].ConnectionString); 
    } 
} 

을 그리고 사방이를 사용합니다. 또한 오버로드를 추가하여 전달하려는 DataLoadOptions 또는 기타 항목을 허용 할 수 있습니다.

HTH.