我需要为一些.net应用程序编写专门的嵌入式数据库。数据库部分本身没有问题(如上所述,它是专门的),但从我的.net代码访问它是。
我在考虑使用LINQ作为唯一的数据访问(所以没有ADO.net,这对于场景来说很好),但是我从来没有这样做过,我想知道我实际需要实现什么?
我需要IQueryable吗?我需要实现一组标准方法/接口吗?是否有写数据的标准,还是我需要为它创建自己的语义?
答案 0 :(得分:3)
我需要IQueryable吗?
是的,这是LINQ挂钩的地方。
是否有编写数据的标准 或者我需要创建自己的 它的语义?
你自己。 OTOH通常是更容易的部分 - 当你更新一行时,你通常会做一个JOIN或者什么。
我个人经常使用BLToolkit这些天(需要快速和轻量级的东西)。他们有一个SqlQuery对象,可以操作类到表。对于大多数直接数据库操作来说足够了(我不使用更改跟踪 - 我的大部分对象都不会更改,但会在数据库中进行版本控制)。
LINQ提供商非常复杂。正如编写执行引擎一样。当然你想要那样走?
答案 1 :(得分:2)
编写自己的linq提供程序非常困难 - 我回过头来调查它并且气馁......但是仍然可以这样做。
查看答案here - 有几个教程链接到。