我正在使用3層架構C#項目。我編寫了代碼來對SQL中的記錄進行排序。但它不會返回任何值。不能鍵入「System.Data.SqlClient.SqlDataReader」隱式轉換爲「System.Data.DataSet中」
查詢:
BEGIN
SELECT
Bank_Code, Bank_Name, Bank_ShortName, CreditCard_Commission_Percent
FROM
BankMaster
WHERE
bank_name LIKE '% + @BankName + %'
END
調用查詢 - BOL:
public DataSet SortBank()
{
try
{
SqlCommand cmd = new SqlCommand("SortBankMaster", dal.con);
cmd.Parameters.Add("@BankName", SqlDbType.NVarChar).Value = Bank_Name;
cmd.CommandType = CommandType.StoredProcedure;
return cmd.ExecuteReader(); // Error
}
catch (Exception ex)
{
throw ex;
}
}
UI:
public void FillSortBank()
{
try
{
DataSet ds = new DataSet();
bol.Bank_Name = txtsort.Text;
ds = bol.SortBank();
DGVBank.DataSource = ds.Tables[0];
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
這是我的DAL:
public DataSet DBread(String Squery)
{
DataSet DSResult = new DataSet();
try
{
if (con.State == ConnectionState.Closed)
{
con.Open();
}
da = new SqlDataAdapter(Squery, con);
da.Fill(DSResult);
Console.WriteLine();
return DSResult;
}
catch (Exception ex)
{
//UnhandledExceptionHandler();
//return e.ToString();
throw ex;
//return DSResult;
}
}
感謝所有....
感謝ü4周烏爾答覆的先生們.. –