2011-11-30 4 views
1

중첩 된 익명 형식을 GridView 컨트롤에 표시하려고합니다. 그러나 OrderID 및 OrderDate 필드 만 표시하는 GridView 컨트롤은 중첩 된 유형을 표시하지 않습니다.중첩 된 익명 형식 표시

protected void btn2_Click(object sender, EventArgs e) 
{ 
    using (EStoreEntities ctx2 = new EStoreEntities()) 
    {  
     var query = (from o in ctx2.Orders 
        select new 
        { 
         o.OrderID, 
         o.OrderDate, 
         nest_anon = new 
         { 
          o.Customer, 
          o.ShipAddress, 
          o.Status 
         } 
        });  

     tb2.Text = (query as ObjectQuery).ToTraceString();     
     gv2.DataSource=query; 
     gv2.DataBind(); 
    }  
} 

내가 내의 GridView에서 익명 중첩 된 익명의 유형을 표시하려면 코드에 어떤 수정해야합니다 :

나는 다음과 같은 코드를 사용하고 있습니다?

+0

오류를 찾으셨습니까? 중첩 된 객체 데이터를 표시하려는 GridView 마크 업을 표시 할 수 있습니까? – patmortech

+0

왜 중첩시켜야합니까? 그리드보기에 표시 할 개체를 평평하게하십시오. – jasonp

답변

0

익명 형식이 정의 된 범위, 즉 버튼 클릭 이벤트 처리기에서만 유효하기 때문에이 작업을 수행 할 수 없습니다.

실제 유형을 만든 다음 그리드에 표시하는 방법을 알아야합니다.

+3

올바르지 않습니다. 익명 형식은이를 생성 한 메서드 외부에서 반환되고 사용될 수 있습니다. – jasonp

+0

크리스, 내게 내가 내 linq 결과에 맞게 형식 클래스를 작성해야합니까? – Michael

+1

@ 제이슨 - 방법을 설명하는 답변을 게시하십시오. – ChrisF