我们目前正在开发一个新的WinForms应用程序(C# .NET 3.5)。
该项目目前已完成40%,但我们花费了大量时间编写DAL实现(CRUD)。我们现在想将NHibernate作为ORM解决方案,以利用其许多优点并减轻一些DAL编码工作。
我们更愿意集中精力解决业务问题。
当前计划迁移到NHibernate和FluentHibernate,但有一些问题。
1.从性能角度来看,你认为NHibernate是否比继续编写自己的代码更明智?对于陡峭的学习曲线,NHibernate的变化值得吗?
2.我们目前采用“软删除”并通过数据库中的视图读取数据,其中有一个字段“Deleted = null”(Deleted是TIMESTAMP)。据我所知,当我们映射每个类时,还可以指定“Where”子句,这意味着我们不再需要任何“过滤”视图来查看我们的数据库。是这样的吗?
3.关于上面的问题。我们还拥有一个“Purge”功能,可以从数据库中删除记录。我们能够使用“软删除”并仍然拥有清除功能吗?
4.我们能够通过NHibernate将BLOB持久化到数据库中吗?
5.对于我们来说,最好的迁移策略是什么?如何开始进行NHibernate迁移,记住该应用程序尚未发布,我们可以更改数据库结构。理想情况下,我认为将映射每个业务对象,然后让NHibernate为我们生成模式,这听起来像一个好主意吗?
6.NHibernate能够处理查找数据吗?我们目前将查找数据读入全局字典,我们在应用程序的生命周期内使用它。我们仍然可以使用NHibernate进行此操作吗?
如果有些问题很基础,请见谅,我仍在努力掌握NHibernate。
该项目目前已完成40%,但我们花费了大量时间编写DAL实现(CRUD)。我们现在想将NHibernate作为ORM解决方案,以利用其许多优点并减轻一些DAL编码工作。
我们更愿意集中精力解决业务问题。
当前计划迁移到NHibernate和FluentHibernate,但有一些问题。
1.从性能角度来看,你认为NHibernate是否比继续编写自己的代码更明智?对于陡峭的学习曲线,NHibernate的变化值得吗?
2.我们目前采用“软删除”并通过数据库中的视图读取数据,其中有一个字段“Deleted = null”(Deleted是TIMESTAMP)。据我所知,当我们映射每个类时,还可以指定“Where”子句,这意味着我们不再需要任何“过滤”视图来查看我们的数据库。是这样的吗?
3.关于上面的问题。我们还拥有一个“Purge”功能,可以从数据库中删除记录。我们能够使用“软删除”并仍然拥有清除功能吗?
4.我们能够通过NHibernate将BLOB持久化到数据库中吗?
5.对于我们来说,最好的迁移策略是什么?如何开始进行NHibernate迁移,记住该应用程序尚未发布,我们可以更改数据库结构。理想情况下,我认为将映射每个业务对象,然后让NHibernate为我们生成模式,这听起来像一个好主意吗?
6.NHibernate能够处理查找数据吗?我们目前将查找数据读入全局字典,我们在应用程序的生命周期内使用它。我们仍然可以使用NHibernate进行此操作吗?
如果有些问题很基础,请见谅,我仍在努力掌握NHibernate。