0

私は、msaccess と mysql データベースを必要とするプロジェクトに取り組んでいます。このために、msaccess と mysql の接続を行う独自のクラスを作成したいと考えています。すべて問題ありませんが、ParameterCollection で問題が発生しました。

これが私のコードです。ParameterCollection内では、setブロックにエラーはありませんが、getブロックでエラーが発生します

タイプ 'System.Data.OleDb.OleDbParameter' を 'MyOleDb.OleDbParameter' に暗黙的に変換することはできません

public OleDbParameter this[int index]
{
    get
    {
        if (IsMySql())
            return ((MySql.Data.MySqlClient.MySqlParameterCollection)this)[index];
        else
            return ((System.Data.OleDb.OleDbParameterCollection)this)[index];
    }
    set
    {
        if (IsMySql())
            ((MySql.Data.MySqlClient.MySqlParameterCollection)this)[index] = value;

        else
            ((System.Data.OleDb.OleDbParameterCollection)this)[index] = value;
    }
}

助けはありますか?

アップデート:

OleDbParameter クラス コード。フルコードのみのカバーではありません。

public class OleDbCommand : System.Data.Common.DbCommand, ICloneable, IDbCommand, IDisposable
{
    static public implicit operator MySql.Data.MySqlClient.MySqlCommand(OleDbCommand c)
    {
        return (MySql.Data.MySqlClient.MySqlCommand)c;
    }
    static public implicit operator System.Data.OleDb.OleDbCommand(OleDbCommand c)
    {
        return (System.Data.OleDb.OleDbCommand)c;
    }
}
4

0 に答える 0