C# использование объекта в качестве типа в SQLite для UWP - PullRequest
0 голосов
/ 18 февраля 2020

Я пытаюсь создать одну функцию, которая может принимать объект в качестве параметра

    public static List<T> Get_DataList_DataFromSystem<T>(object DataNeeded, string BaseTypeString)
    {
          Type baseType = DataNeeded.GetType();
          SQliteConnector.GetInstance.conn.Table<baseType>();
    }

, используя SQliteConnector.GetInstance.conn.Table (); я хочу использовать параметр DataNeeded, который передается в функцию.

SQliteConnector.GetInstance получает экземпляр (SQLiteConnection (new SQLitePlatformWinRT (), path);)

SQliteConnector. GetInstance.conn.Table (); требует, чтобы класс был передан в

1 Ответ

3 голосов
/ 18 февраля 2020

Generi c методы требуют, чтобы тип был известен во время компиляции, тогда как GetType() выполняется во время выполнения.

Это то, что вам нужно:

public static List<T> Get_DataList_DataFromSystem<T>(T DataNeeded, string BaseTypeString) where T : class
{
      SQliteConnector.GetInstance.conn.Table<T>();
}

Тип DataNeeded может быть выведен во время компиляции на основе типа объекта, который передается методу.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...