2012-01-23 2 views
0

У меня есть метод, который я вызываю, и после вызова метода мне нужно увидеть, не возвращает ли он результаты или результаты. Если он возвращает результаты, отображается определенная панель, и если результатов нет, отображается определенная панель.Проверьте, возвращает ли метод результаты

Это мой метод:

public DataView RedeemCoupon() 
{ 
    string connStr = ConfigurationManager.ConnectionStrings["SiteSqlServer"] 
        .ConnectionString; 
    SqlConnection conn = new SqlConnection(connStr); 
    SqlCommand cmd = new SqlCommand("CPC_GetCoupons", conn); 
    cmd.CommandType = CommandType.StoredProcedure; 
    cmd.Parameters.Add(new SqlParameter("@CouponCode", txtCouponCode.Text)); 
    SqlDataAdapter dap = new System.Data.SqlClient.SqlDataAdapter(cmd); 
    DataSet ds = new DataSet(); 

    // open conn 
    if (conn.State == ConnectionState.Closed) 
     conn.Open(); 

    // fill 
    dap.Fill(ds); 

    // close the conn 
    if (conn.State == ConnectionState.Open) 
     conn.Close(); 

    return ds.Tables[0].DefaultView; 
} 

Любые идеи?

Спасибо!

+3

Что именно вы испытываете трудности с? – Oded

ответ

3

Вы можете проверить .Table.Rows свойство DefaultView:

var dataView = RedeemCoupon(); 

if (dataView.Table.Rows.Count == 0) { 
    // show the no results panel 
} 
else { 
    // show another panel 
} 
2

Вы должны просто проверить свойство Count результата, например.

int numberOfResults = RedeemCoupon().Count; 

или

bool hasResults = RedeemCoupon().Count > 0 
Смежные вопросы