支持OleDb和存储过程的.NET ORM框架好吗? [英] Good .NET ORM Framework that supports OleDb and Stored Procedures?

查看:78
本文介绍了支持OleDb和存储过程的.NET ORM框架好吗?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我们系统中的典型存储过程接受大约20个左右的参数.也没有机会重构这些存储过程.我基本上是依靠编写自己的代码生成器来将这些SP封装到(与数据库提供者无关的)"Command"对象中,并且它们的公共属性与SP参数相对应.它可以工作,但是我更喜欢经过第三方测试和测试的解决方案.

A typical stored procedure in our system accepts around 20 or so parameters. There's no chance of refactoring these stored procedures either. I've basically resorted to writing my own code generator that wraps these SP's into (database provider agnostic) "Command" objects, with their public properties corresponding to the SP parameters. It works, but I'd prefer a 3rd party tried and tested solution.

有人可以推荐任何东西吗?我还没有找到一种支持OleDB和存储过程的软件.

Can anyone recommend anything? I haven't found one that supports OleDB and stored procedures.

由于SQL 6.5,我需要OleDb连接(信不信由你). ADO.NET无法连接到SQL 6.5.另外,这是一个.NET 2.0应用程序,因此LinqToSql对我没有用.

I need OleDb connectivity because of SQL 6.5 (believe it or not). ADO.NET cannot connect to SQL 6.5. Also, this is a .NET 2.0 application, so LinqToSql is of no use to me.

Edit2:我已经尝试过nHibernate和iBatis.它们都不适合我的需求.我上次尝试nHibernate时要求SP返回结果集.我的SP并非如此.他们两个都还需要我手动指定参数.

I've already tried nHibernate and iBatis. Neither of them suit my needs. The last time I tried nHibernate it required that the SP return a result set. That isn't the case with my SPs. Both of them also require me to manually specify the parameters.

推荐答案

我有3个ORM层的经验:

I have experience with 3 ORM layers:

  • Subsonic
  • CSLA.NET
  • .NET Tiers

这三个都是免费的,支持OleDb连接和存储过程.

All three are free, support OleDb connections, and stored procedures.

Subsonic-这是专门为Web应用程序而构建的.它模仿了Ruby On Rails的很多功能.他们只是添加了迁移.亚音速是这三个中最轻的.对于Winforms来说,使用它有点困难,但是却没有我想象的那么难.它带有一个不错的UI工具,可以生成代码并维护数据库设置.这是唯一支持不同数据库的数据库.我已经将它用于SQLite,SQL Server CE和SQL Server.

Subsonic - This one was built specifically for web applications. It mimics a lot of what Ruby On Rails does. They just added migrations. Subsonic is the lightest of the three. It's a tad harder to use for Winforms, but not as hard as I though it would be. It comes with a nice UI tool to generate the code and maintain database settings. This is the only one that has support for different databases. I've used it with SQLite, SQL Server CE, and SQL Server.

CSLA.NET-这个几乎可以处理几乎所有新的和灵巧的.NET技术.我知道作者刚刚添加了对WCF,WPF和Silverlight的支持.当我需要使用企业型应用程序进行繁重的工作时,这就是我使用的方法.它具有许多不错的功能,例如无限制的对象撤消,将集合标记为只读的功能以及将对象移动和锚定在任何位置的能力.这是您最接近JBoss在Java上所做的事情.

CSLA.NET - This one can pretty much handle pretty much all of the new and shinny .NET technologies. I know that the author just added support for WCF, WPF, and Silverlight. This is what I use when I need very heavy lifting with enterprisey type apps. It has a lot of nice features like unlimited object undo, the ability to mark collections as read only, and the ability to move and anchor objects anywhere you want. This is the closest you will get to what JBoss does on Java.

网络层-我不是忠实拥护者,但可以完成工作.它比CSLA轻,但仍比Subsonic重.

Net Tiers - I'm not a big fan, but it will get the job done. It's lighter than CSLA, but still heavier than Subsonic.

我还要提及 NHibernate Microsoft Enterprise图书馆.我对这些没有太多经验.

I would to also mention NHibernate, Castle Active Record, and Microsoft Enterprise Library. I don't have much experience with these though.

这篇关于支持OleDb和存储过程的.NET ORM框架好吗?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆