2014-02-26 5 views
0

내 gridview에서 선택한 제품의 이름을 가져오고 싶습니다. 데이터베이스에서 비교할 때 사용할 수있는 색인 번호가 있지만 해당 색인 번호에 속한 항목의 이름을 선택할 수 없습니다.wcf dataservice에서 특정 (이름) 값 가져 오기

ServiceReference1.ProductContext ctx = new ServiceReference1.ProductContext(new Uri("http://SERVER:5000/WcfDataService1.svc/")); 

DbList = ctx.Products; 
int index = ProductsList.SelectedIndex; 

string name = DbList.XXXXXXX // -> ????????? 

내가 시도한 모든 것이 예외적 인 것으로 나타났습니다. 어떤 아이디어가 제품 이름을 얻는 방법?

미리 감사드립니다.

+0

합니다. – Tim

+0

은 ProductsList의 이름 만 반환합니다. 내용 없음 : ( – Bilow

답변

0

simon at rcl과 LaMMMy가 올바른 방향으로 나를 도왔습니다. 고맙습니다!

그래서 문제에 대한 내 솔루션입니다 :`ProductsList`이 드롭 다운 기타리스트,`ProductsList.SelectedValue` 트릭을 할 수있는 뭔가가

ServiceReference1.Product product = (ServiceReference1.Product)this.ProductsList.Items[productIndex]; 
string name = product.Name; 
2
같은

뭔가 (이 너무 좋아하지 않을 수 있습니다 에어 코드) :

Product product = DBList.Where<Product>((p) => p.Id == index); 

이 DBList 유형 제품의 목록이 있다고 가정하고, 제품 색인을 '일치하는 Id 속성을 가지고 다시 찾고.

당신은 할 수

string name = product.Name; 

등 등 등

+0

Yess, 이것은 올바른 방향으로 나를 도왔습니다. 해결책 : ServiceReference1.Product product = (ServiceReference1.Product) .ProductsList.Items [Index]; – Bilow

1

이 방법은 DataService의 컨텍스트 여부에 적용될 경우 잘 모르겠어요

Product myProduct = ctx.Products.Find(index); 
string name = myProduct.Name; 

을 할 수 없습니다.

편집 : 저는 Entity Framework/ApplicationDBContext를 생각하고 있습니다. 제 생각에는 rcl의 사이먼이 linq에 대한 답을 가지고 있다고 생각합니다.