2010-03-15 7 views
19

RIA Services (VS2010Beta2)에서 첫 걸음을 내딛었습니다.이 문제가 발생했습니다 : EF 모델 (POCO 없음), 일반 저장소 및 RIA 서비스 ASP.NET MVC 응용 프로그램에서 호스팅 됨) ASP.NET MVC 응용 프로그램 내에서 데이터를 가져 오려고했습니다. 다음 단계 : Silverlight 클라이언트. 저장소의 모든 레코드를 쿼리 (컨텍스트를 통해) RIAService에 대한 참조를,있어 (이 코드 샘플 사용)뿐만 아니라 SL 응용 프로그램에 그들을 가지고 :RIA Services EntitySet에서 '편집'작업을 지원하지 않습니다.

private ObservableCollection<Culture> _cultures = new ObservableCollection<Culture>(); 
public ObservableCollection<Culture> cultures 
{ 
    get { return _cultures; } 
    set 
    { 
    _cultures = value; 
    RaisePropertyChanged("cultures"); 
    } 
} 

....

//Get cultures    
EntityQuery<Culture> queryCultures = from cu in dsCtxt.GetAllCulturesQuery() 
              select cu; 
loCultures = dsCtxt.Load(queryCultures); 
loCultures.Completed += new EventHandler(lo_Completed); 

....

void loAnyCulture_Completed(object sender, EventArgs e) 
{ 
    ObservableCollection<Culture> temp= 
    new ObservableCollection<Culture>loAnyCulture.Entities); 
       AnyCulture = temp[0]; 
} 

문제는 이것이다 : 나는이 오류 (이 예에서 첫 번째 레코드를) 기록의 일부 데이터를 편집하려고 할 때마다 : 이 EntitySet '문화'유형의 '편집'작업을 지원하지 않습니다.

나는 내가 뭔가 이상한했고, 형 문화의 객체를 생성하고 값을 할당하려고 생각 : 그것은 잘 작동!

내가 무엇이 누락 되었습니까? EntitySet을 선언해야합니까? 나는 그것을 표시해야합니까? 내가해야 할 일이 ... 뭐야? 사전에

덕분에

답변

42

그것은 예를 들어, ... DomainService 클래스 하나를 구현하는에, "편집"로 (또는 적어도 "자리 표시 방법을"표시) "삭제"를 밝혀

[Delete] 
public void DeleteCulture(Culture currentCulture) 
{ 
    throw new NotImplementedException("UpdateCulture not Implemented yet"); 
} 
[Insert] 
public void InsertCulture(Culture newCulture) 
{ 
    throw new NotImplementedException("InsertCulture not Implemented yet"); 
} 

OrganizationDomainContextEntityContainer 클래스는 매개 변수 EntitySetOperations.All (모든 CUD 작업에 사용할 수있는 것을 의미한다)과 EntitySet을 만들어이 방법.

은 미래에 누군가를 위해 유용 희망! 나를 위해

+0

매우 유용합니다 :) –

+0

@Greco : 내가 도움이 될 수 기뻐! –

+0

@SavvasSopiadis - 좋은 작품, 감사합니다! – Rob