WPF/MVVM을 사용하여 엔티티 프레임 워크를 탐색하고 있는데 이것은 기본적으로 얻을 수있는 기본 작업이지만 작동시키지는 못합니다. OUTAGE_DETAILS와 OUTAGE_TYPE_LOOKUP이라는 두 엔티티가 포함 된 edmx 다이어그램이 있습니다. 간단히 엔티티 중 하나에 대해 linq을 수행하고 DataGrid에 바인딩 할 수있는 ObservableCollection을 반환하기 만하면됩니다. 결국 DataGrid에서 레코드를 추가/수정합니다. 내가 잘못하고있는 것은 무엇이며 편집 및 레코드 추가의 최종 결과를 위해 취할 수있는 최선의 방법입니까?엔티티 프레임 워크와 ObservableCollections
private Data_Entities oeContenxt = new Data_Entities();
private ObservableCollection<OUTAGE_DETAILS> _outagecollection;
public ObservableCollection<OUTAGE_DETAILS> OutageCollection
{
get { return _outagecollection; }
set
{
if (value == _outagecollection) return;
_outagecollection = value;
}
}
private void ShowOutages()
{
var query = (from o in oeContenxt.OUTAGE_DETAILS
select o.OUTAGE_SEQ_ID).ToList();
OutageCollection = new ObservableCollection<OUTAGE_DETAILS>(query.ToList()); // <- Error Here
}
// constructor
public MainWindowViewModel()
{
this.ShowOutages();
}
과 오류는 다음과 같습니다 :
이 내가 가진 무엇 The best overloaded method match for 'System.Collections.ObjectModel.ObservableCollection<WpfApplication1.OUTAGE_DETAILS>.ObservableCollection(System.Collections.Generic.IEnumerable<WpfApplication1.OUTAGE_DETAILS>)' has some invalid arguments
I는이 시나리오에 대한 일반적인 오류입니다하지만 난 그것에 대한 해결책을 발견하지 않았습니다 믿습니다. 또한 내 컬렉션의 선언에 엔티티 이름 OUTAGE_DETAILS을 올바르게 사용하고 있습니까?
정말 기본적인 질문에 대해 유감이지만이 자료를 배우려고합니다. 도와 주셔서 감사합니다.
public ObservableCollection<OUTAGE_DETAILS> LoadOutageDetails()
{
// Charge les données (Load data)
oeContenxt.OUTAGE_DETAILS.Load();
return oeContenxt.OUTAGE_DETAILS.Local;
}
이보기의 뒤에 코드에서 사용
EF 데이터를 취득하기위한
이 오류를보고하는 코드 줄을 제공 할 수 있습니까? 이 코드 스 니펫이 유효 해 보였으므로 더 자세한 정보가 필요합니다. – Crypt32
감사합니다. @CryptoGuy, 나머지 코드를 포함 시켰습니다. – mack
(from oeContenxt.OUTAGE_DETAILS에서 o.OUTAGE_SEQ_ID를 선택하십시오.) .ToList()는 OUTAGE_DETAILS가 아닌 Id 목록을 리턴합니다. "o"를 선택하십시오. – jhenninger