我正忙于将一个项目从NHibernate 3.3.3.4迁移到5.1.3。我在提交事务或刷新会话时遇到了一个错误。
我目前收到的错误如下:
Method not found: 'System.Data.IDbCommand NHibernate.AdoNet.AbstractBatcher.get_CurrentCommand()'.
我查看了NHibernate 5.1.3代码和发行说明,可以看到AbstractBacther
类的CurrentCommand
属性getter发生了更改。在NHibernate的这个主要版本中,这个属性已经从IDbCommand
类型变为DbCommand
类型。请参阅以下差异:
版本3.3.x固定链接
protected IDbCommand CurrentCommand
{
get { return _batchCommand; }
}
版本5.1.3固定链接
protected DbCommand CurrentCommand
{
get { return _batchCommand; }
}
我正在使用SqlAzureClientDriver(NHibernate.SqlAzure(进行可靠的SQL Azure连接。我注意到最新版本的NHibernate。SqlAzure仍在使用IDbCommand实现。
是否有其他使用SqlAzureClientDriver的用户遇到此问题并能够解决?
使用NHibernate5版本的SqlAzureClientDriver,该版本可以作为nuget包NHibernace5.SqlAzure.安装