本来想偷懒,利用自动事务来写程序。可是在windows2003上死活不行:
System.Runtime.InteropServices.COMException (0x8004D00E): 此事务已明地或暗地被确认或终止
windows2000上面就跑的好好的。真是应了同事的一句话,利用非托管方式会带来很多问题。

很多软件会出现要求98, 不支持XP等等怪问题,原因类似。既然上了.net,还是不要走回头路了。浪费我N多时间,真可恶!

此路不通,又不想在方法间无聊的传递Transaction. 还有线程变量可以考虑:
LocalDataStoreSlot或者[threadstaticattribute] / [ContextStaticAttribute]
TransUtil.CurrentTrans取得线程/上下文静态变量。

说到Context,应该很有趣,.net中提供了很多Context, 比较典型的有:
System.Windows.Forms.ApplicationContext
System.Runtime.Remoting.Messaging.CallContext
System.Runtime.Remoting.Contexts.Context
System.Web.HttpContext
System.EnterpriseServices.SecurityCallContext
哪位大侠给比较一下共性和个性?


posted on 2004-03-25 20:40  steeven  阅读(3136)  评论(7编辑  收藏  举报