데이터 액세스에 EF를 사용하고 사용자 인터페이스에 WPF 및 MVVM을 사용하는 프로젝트에서 작업하고 있습니다.XAML이로드 실패 오류를 발생합니다.
저는 윈도우의 데이터 컨텍스트에 뷰 모델을 바인딩하고 있습니다. 이 뷰 모델에는 다음과 같이 정의 된 기본 생성자가 있습니다.
public KonumVM()
{
LocationOperations = new LocationOperations();
LocationNames = new ObservableCollection<string>();
Corporations= new ObservableCollection<Kurum>();
//Corporations= LocationOperations.GetCorpValues();
//foreach (var corp in Corporations)
//{
// LocationNames.Add(corp.Name);
//}
}
주석 처리 된 행은 데이터베이스에 쿼리하는 곳입니다. 선이 주석 처리되지 않은 경우이 View Model에 바인딩되는 창의 XAML 코드를 편집하려고하면 예외가 발생합니다. 이는 디자이너를 차단하는 XAML로드 실패라고 생각합니다. 예외는 메시지의 끝에 있습니다. 필자가 데이터베이스를 쿼리하는 데이터베이스에 주석을 달면 디자이너도 괜찮습니다. 예외는 없습니다.
어떻게해야합니까? 데이터베이스 액세스 코드를 기본 생성자가 아닌 다른 위치로 이동해야합니까?
는 데이터베이스 "DemirbaşEntityLibrary.DemirbaşContext는"로그인에서 를 요청 할 수 없습니다. 로그인에 실패했습니다. 'Rfid \ Mert'사용자가 로그인하지 못했습니다. System.Data.ProviderBase.DbConnectionClosed.OpenConnection에서 System.Data.ProviderBase.DbConnectionFactory.GetConnection에서 System.Data.ProviderBase.DbConnectionPool.GetConnection (DbConnection owningObject) (DbConnection owningConnection) (DbConnection outerConnection에서
, System.Data.EntityClient.EntityConnection.OpenStoreConnectionIf에서 System.Data.SqlClient.SqlConnection.Open()에서 DbConnectionFactory ConnectionFactory를) (부울 openCondition, DbConnection storeConnectionToOpen, DbConnection originalConnection, 문자열으로 Exception, 문자열 attemptedOperation, 부울 & closeStoreConnectionOnFailure)
디자이너에서 연결이 필요하지 않은 경우이 [SO 질문] (http://stackoverflow.com/questions/425760/is-there-a-designmode-property-in-wpf)을보고보십시오 –
It 내가 찾고있는 것 같지만 "this"가 사용되는 메서드에서 종속 개체 인수가되어야하는 이유는 무엇입니까? MVVM을 사용하고 있습니다. DesignerProperties.GetIsInDesignMode (this) –
이것은 여러분의 필요에 더 가깝습니다. http://stackoverflow.com/questions/2498521/wpf-mvvm-viewmodel-constructor-designmode –