我试图找到一种使用字符串 sql 查询将 C# 列表作为数据库进行查询的方法,例如:
List<Customer> customers = new List<Customer>(){
new Customer(){Name = "joe", Age = 20},
new Customer(){Name = "john", Age = 25}
};
string query = @"Select * from customers";
List<Tuple> tuples = EntityDB.query(customers, query);
Console.Writeline(tuples[0][0]); //prints "joe"
我有几个需要使用此功能来满足的要求,
- 它需要支持动态 SQL 查询(字符串查询),因为我需要从这个列表中提取特定的行,并且过滤不是预定义的。(linq 在这里没有帮助)
- 它需要能够像 SQL 一样支持多行的功能(如 Average、Count...)。
- 它需要支持与 SQL 完全一样的指定列的提取(选择 column1、column2...)
我没有 SQL 服务器,我没有额外的 mdf DB,它只是这个客户对象列表,有没有办法做到这一点?
我这样做的动机是能够从此列表中提取特定信息到二维表并将其输出到 excel,但是行和列过滤没有预定义,并且需要多行操作,用户将能够指定确切的他们想要像 SQL 查询一样提取的信息。