2014-01-14 3 views
1

선택한 행 수나 SQL 리턴 코드를 가져 오려고합니다. 아무 것도 반환되지 않은 경우 listview1.dataBind을 수행하지 않는 것이 좋습니다. 여기에 cmd.ExecuteNonQuery()을 실행할 수 없습니다. 나는 비슷한 것을 얻고 싶다.ListView에서 선택된 행 수를 얻으십시오.

private void ListApointement(string sChoixDdl) 
{ 
    using (ApointementDataContext db = new ApointementDataContext()) 
    { 
     var aptItems = from Apointement in db.Apointement 
         where Apointement.doctorName == sChoiceDdl && 
          Apointement.isAvailable == true && 
          Apointement.date >= DateTime.Now 
         select Apointement; 

        ListView1.DataSourceID = null; 
        ListView1.DataSource = aptItems; 

//I want to get the number or rows which have been selected or the sql return code. 
        int numberOfRecords = cmd.ExecuteNonQuery(); 

        ListView1.DataBind(); 

    }; 
} 
+0

이미 샘플에서 사용하는'linq' 쿼리로 반환되는 레코드 수를 원하거나 다른 쿼리를 실행해야합니까? –

+0

cmd.ExecuteNonQuery가 작동하지 않습니다! – user3127986

+0

명령 문자열은 어디에 있습니까 ??? –

답변

0

나는이 문제를 해결하고 있습니다. DataBind()는 "처리 된 객체에 액세스 할 수 없습니다."라는 오류가 발생했기 때문에 if 문 외부에있었습니다. 프로그램에서. 빈 ListView + 오류 메시지를 생성하기로 결정했습니다.

    ListView1.DataSourceID = null; 
        ListView1.DataSource = rdvItems; 

        int numberOfRecords = rdvItems.Count(); 
        if (numberOfRecords == 0) 
        { 
         lblMessage.Text = "No Apointement are available"; 

        } 


        ListView1.DataBind(); 
0

이 작업을 수행 할 수 있어야한다 : 여기

if (aptItems.Count() > 0) 
    ListView1.DataBind(); 
관련 문제