如何通过sqlite连接正确使用模板

时间:2019-02-22 20:02:41

标签: c# sqlite templates

我之前有个问题,我指的是工厂和模板。解决了我的问题。除了使用nuget包System.Data.SQLite时的特定问题之外。我的问题是进行查询时。您必须明确命名要查询的表。例如,

    public IEnumerable<Base> GetData(Base matchThis)
    {
        var query = from entry in connection.Table<Base>()
                    where entry.x == matchThis.x
                    where entry.y == matchThis.y
                    select entry;
        return query.AsEnumerable();
    }

所以,如果我更改

connection.Table<Base>()

收件人

connection.Table<derA>()

它正常工作。

但是,我使用模板的尝试无效...

public IEnumerable<Base> GetClass<T>() where T : class
{
    var t = Activator.CreateInstance<T>() as Base

    var query = from entry in database.Table<t>() 
    ...
    ...
    ...

我得到-t是一个变量,但像类型一样使用。该错误是有道理的,但我看不出该如何解决。

那么,这是正确的方法吗?我还是没有正确使用模板,还是有另一种方法?

0 个答案:

没有答案