好久没有来博客园了,最近刚好有点时间晚上,继续完善之前的orm
orm自己用的比较多的还是EF,linq写着真的是很方便,但是EF最让人头疼的地方还是每个表都需要建立mapping。
这个是相当的烦恼,还有很多坑在mapping。
在使用oracle的时候也是有很多不方便和不好用的地方。
dapper就完全没有这方面的问题,灵活还简单,但是dapper就因为简单,所以在一些做表的增删改查的时候就很烦,需要写很多好无营养的sql语句,算然说着这部分在使用代码生成器可以比较好的解决,但是看着还是变扭。
对后期代码的改动也是不好处理。
所以一个大胆的念头出现在我心里,将EF和dapper做整合,各自处理自己擅长的部分;
sql语句查询和复杂查询用dapper,增删改查用dapper。
下面是我的一些构思
/// <summary>
/// 执行sql语句
/// </summary>
/// <param name="strSql">sql语句</param>
/// <returns></returns>
public int ExecuteBySql(string strSql)
{
return dbcontext.Database.Connection.Execute(strSql);
}
利用EF 的上下文获取链接对象执行dapper的扩展方法。
现在是用的爽歪歪。
希望能给读者提供一些思路。