2010-01-20 65 views
1

我试图开始一个事务,但是在调用.Begin()方法时抛出一个NullReferenceException并且堆栈跟踪显示它来自IBMU2.UODOTNET.UniTransaction.ServerTransaction(Int32 aKey)UniTransaction抛出NullReferenceException

有没有人成功使用UniTransaction,如果有的话,是否有我失踪的东西?

// note: Session is already connected 
// and can do UniFile operations prior to this point. 

UniTransaction transaction = session.CreateUniTransaction(); 
transaction.Begin(); // throws NullReferenceException 

注意:系统是UniData系统,而不是UniVerse系统。不知道这是否有所作为。

[更新2011-07-08]仍有此问题。我们使用UniData版本7.2(我认为7.2.6具体)并使用UniObjects.NET版本2.2.3.7377。

+0

见下面我更新。希望它有帮助。 – 2011-12-01 16:13:57

回答

0

更新:目前已为UO.NET交易对象的修复为2.2.5版本

您可以下载在十一月-2011 U2 Clients download的最新版本。

如果这样不能解决您的问题,请与您的支持提供商联系。我发现系统中没有与此问题有关的开放漏洞。


你能提供更多的代码吗?

作为一个开始,也许移动session.CreateUniTransaction你做的session.CreateUniFile之前。

不知道这是否会帮助(因为我们目前正在使用的COM UniObjects不是.NET库),但是这是他们如何有它在本例中uonet.pdf

+0

唯一的其他代码是unisession对象的登录名,密码和连接调用。之后,我只是使用上面的代码,它会引发错误。我认为这是一个UniData问题。难道我们的UniData版本不支持交易?或者只有UniVerse可以支持交易? – thames 2010-02-11 16:17:54

+0

如果我记得正确,UniData支持从v6开始的事务。 – 2010-02-11 17:54:59

+0

嗯。我会做一些检查。我们正在使用v6。也许它需要打开或者是UniData中的配置设置? – thames 2010-02-12 17:45:45

相关问题