代码之家  ›  专栏  ›  技术社区  ›  DRapp

基于现有类型定义自己的类型

  •  0
  • DRapp  · 技术社区  · 15 年前

    如何对类型进行引用,以便后续使用我的引用名称。。。以最简单的形式。。。

    MyInt——从int派生

    那么,在其他地方,我会提到MyInt。更重要的是,我需要在一个类定义中分别定义这个“#define”,这个类定义可以是子类,也可以是不同的类型。实际意图是

    MyTypeSQLCmd = OleDbCommand
    OR
    MyTypeSQLCmd = SQLiteCommand
    

    我的子类只需引用,就可以创建一个新的MyTypeSQLCmd();

    ---让我再详细说明一下。

    我有另一个类连接到SQLite数据库。

    if(connectingToSQLite)
      MyCmd = new SQLiteCommand();
    else
      MyCmd = new OleDbCommand();
    

    此后,我需要的常用方法是相同的引用,例如

    因此,我不能将变量预先声明为一种“类型”或另一种“类型”,例如

    OleDbCommand-MyCmd; sqlitecommandmycmd;

    4 回复  |  直到 15 年前
        1
  •  2
  •   veggerby    15 年前

    你不是真的在寻找一个接口吗。 IDbCommand

        2
  •  1
  •   Daniel A. White    15 年前

    您可以从中继承,也可以使用 using

    using SomeClass = SomeOtherClass;
    
        3
  •  1
  •   Guffa    15 年前

    class SubClass<MyTypeSQLCmd> where MyTypeSQLCmd : IDbCommand, new {
       ...
    }
    

    现在,该类可以创建该类型的实例,并使用IDbCommand接口中的所有方法。可以为任何数据库命令类型创建类的实例。

        4
  •  0
  •   Adam Robinson    15 年前

    如果你在找类似C的东西 typedef ,然后,尽管有可能 using System.Data.Common.DbCommand System.Data.IDbCommand (分别为)和反对它的方案。那你呢 实例化 SqlCommand OleDbCommand 表示要使用的特定实现。