使用Webmatrix.Data api或?在MVC控制器中简化数据库访问

时间:2013-09-30 14:25:00

标签: asp.net-mvc asp.net-mvc-4 webmatrix-2

我的MVC应用程序访问DB2 / 400。

我的DAL dll正在围绕ADO.NET构建。

我需要构建一些简单的控制器动作。我不想全身心地执行datareader方法只是为了让事情变得简单并使我的DAL变胖。

这些操作主要是修复我们企业系统中的一些错误的通用SQL语句,因此我希望保持简单并轻松更改它们。

如果我使用webmatrix.data db api,因为我在网页中使用它,这样可以吗?

如果没有,那还有什么简单的选择吗?

2 个答案:

答案 0 :(得分:1)

如果您愿意,可以使用WebMatrix.Data,但您也可以查看受WebMatrix.Data启发的Massive(https://github.com/robconery/massive)。它可能更符合企业风格的方法。

答案 1 :(得分:0)

我最终选择DAPER作为我的解决方案

它完全符合我的要求。扩展IDBconnection并为我提供我需要的东西。

示例:

普通ado.net方法中的等价物将是20-30行,以便执行datareader并迭代结果。

这是Dapper的实施:

private IDbConnection db = new OleDbConnection(ConfigurationManager.ConnectionStrings["ENTERBG"].ConnectionString);

ViewBag.F4211 = this.db.Query<dynamic>(@"SELECT sdivd,SDDOC,SDDCT,SDDOCO,SDDCTO,SDODOC,SDODCT FROM F4211 WHERE SDDCT IN
                                                    ('E8','E9','E0','EP','EC','EB','ED') AND SDODOC <> SDDOC AND
                                                    SDODOC<>0 order by sdivd");

以上示例用作示例。我不打算使用ViewBag。