2011-02-06 4 views
0

데이터 입력을 위해 사용하고있는 gridview가 있습니다.빈 GridView에 머리글과 바닥 글 표시 SQL에 Linq 사용

로직은 사용자가 쇼핑 영수증에서 행 단위로 데이터를 입력한다는 논리입니다. 질의는 그 일에 기록 된 모든 항목을 반환, 그래서 첫 번째 항목을 입력 할 때 행이 없을 것이다 쿼리에서 반환 데이터가 반환되지 않을 때

var qPurchase = from p in db.purchases 
         where p.purchaseDate.Date == DateTime.Now.Date 
         select new 
         { 
          p.purchaseID, 
          p.product.name, 
          p.product.units, 
          p.product.priceMarked, 
          p.packCost, 
          p.product.vat, 
          p.unitSalePrice, 
          p.bestBefore 
         }; 

      gvPurchases.DataSource = qPurchase; 
      gvPurchases.DataBind(); 

가 어떻게 바닥 글을 표시 할 수 있습니다? 주위를 둘러 보았고 datatable을 사용할 때 몇 가지 예가 있지만 Linq 기반은 아닙니다.

도움을 주시면 감사하겠습니다.

답변

0

격자보기의 EmptyDatatext 값을 설정하면 바닥 글이 나타납니다.

그러나 제가 생각하기에 그리드보기에 데이터가 없으면 qPurchase는 비어있는 행에 바인딩해야합니다. 그래서 결과가 돌아 오지 않으면 0 또는 빈 문자열을 가진 결과를 추가 한 다음 사용자에게이를 입력하라는 메시지를 표시합니다. qPurchase에서 값을 설정하거나 행을 만들어서이 작업을 수행 할 수 있습니다. 결과가없는 경우 그리드보기에 추가하십시오.

+0

EmptyDatatext 시도했지만 머리글을 가져 오지 않았습니다. qPurchase에 빈 데이터를 추가하려면 어떻게합니까? – Ben

+0

당신의 물건이 어떻게 보이는지 알아야합니다. 하지만 그것은 단지 qPurchase.add (새로운 구매())와 같아야합니다. 그리고 qPurchase가 어떤 이유에서 건 목록이나 열거 형이 아닌 경우 데이터는 기본 또는 더미 값을 입력 한 상태로 새 purchase() 객체에 바인딩합니다. – Roloc