0

SqlDataReaderプロジェクトでDBからデータを読み取ってWebサービスに送信するために使用しています.会社のデータcompanyIDを読み取るためにこの方法companyNameがありましたが、キャストの問題があります:

public static DbDataReader GetCompanies()
{
    DbDataReader dr = null;
    DbCommand comm = GenericDataAccess.CreateCommand();

    comm.CommandType = CommandType.StoredProcedure;
    try
    {
        dr = GenericDataAccess.ExecuteReader(comm);
        dr.Read();
    }
    catch (Exception ex)
    {
        throw ex;
    }
    return dr;


}

//ExecuteReader DAL
     public static IDataReader ExecuteReader(DbCommand command)
            {
                try
                {
                    command.Connection.Open();
                    return command.ExecuteReader(CommandBehavior.CloseConnection);
                }
                catch (Exception ex)
                {
                    Utilities.LogError(ex);
                    throw;
                }
                finally
                {
                    command.Connection.Close();
                }

            }

問題:

Error   1   Cannot implicitly convert type 'System.Data.IDataReader' to 'System.Data.Common.DbDataReader'. 
An explicit conversion exists (are you missing a cast?) 
4

1 に答える 1

0

GetCompanies() メソッド (推奨) または DAL ExecuteReader() メソッドの戻り値の型を変更します。

于 2013-02-05T19:12:19.847 に答える