c# - 自动实现的属性类的C#泛型

标签 c# sqlite generics windows-phone-8 type-constraints

我创建了一个属性类,表示我的SQLite数据库的表模式。类中的每个属性都将成为数据库中的一个属性。

class SQLiteTables
{
    public class tblPerson
    {
        [PrimaryKey, AutoIncrement]
        public int PersonID { get; set; }
        public string PersonFirstName { get; set; }
        public string PersonMiddleName { get; set; }
        public string PersonLastName { get; set; }
    }

    public class tblSchedule
    {
        [PrimaryKey, AutoIncrement]
        public int ScheduleID { get; set; }
        public string ScheduleDescription { get; set; }
        public DateTime ScheduleStart { get; set; }
        public DateTime ScheduleEnd { get; set; }
    }

    //18 more table definitions below
}


现在,要从表中检索一些数据,

public void GetPersonList()
{
    List<tblPerson> lstTemp = dbConn.Table<tblPerson>().ToList<tblPerson>();

    // Some 20 lines of code here
}


我想避免编写特定于类型的方法,这是一个繁琐的任务。我想创建一个可重用的方法,该方法可以使用泛型实现检索任何表上的数据。我该如何实现?

编辑我正在Windows Phone 8平台上工作。

最佳答案

这应该适合您的工作。

public List<T> GetItems<T>()
{
    return dbConn.Table<T>().ToList<T>();
}

关于c# - 自动实现的属性类的C#泛型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21821713/

相关文章:

c# - Linq/删除空格返回实际值 'system.char'

php - PHP PDO SQLite连接

sqlite - 在Sqlite上查询以仅对每个用户的三个最新记录进行分组

oop - 是否有更优雅的方式(或模式)来实现相关类组

swift - 观察 Swift 5 变化的通用协议(protocol)

c# - OracleCommand SQL 参数绑定(bind)

c# - 如何确定网络接口(interface)是否连接到互联网(即计算机在线)

C# 继承窗体中的类

sql - 在 Sqlite 中使用 REGEX 匹配和替换字符串?

c# - 向下转换通用元素类型