草庐IT

TRANSACTIONS

全部标签

c# - 如何查找交易状态

我正在使用“TransactionScope”,我只需要在C#代码中执行一些DML,我已成功完成。我需要查明交易的状态是什么,即交易是否成功完成?因为根据交易状态,如果交易完成则我需要执行重定向到另一个页面,否则如果交易未成功完成则我需要在页面上显示错误。我想在以下之后重定向:-scope.Complete();scope.Dispose();请在这方面帮助我。 最佳答案 如果你visittheMSDNpage对于TransactionScope,您会发现这个有据可查的示例:try{//CreatetheTransactionSco

c# - Visual Studio 2012 - 在 .NET 4.5 框架中找不到 System.Transactions 程序集

我试图在C#VisualStudio2012项目中添加对System.Transactions的引用,但System.Transactions在框架程序集中不可用,您可以在下面的屏幕截图中看到:有谁知道为什么System.Transactions对我不可用?我怎样才能让它重新出现?编辑:修复了屏幕截图,谢谢Marc! 最佳答案 为此发布了一个MicrosoftConnect条目,其中有一条评论建议您可以浏览它。给出的路径是:C:\ProgramFiles(x86)\ReferenceAssemblies\Microsoft\Fram

c# - TransactionScope 不回滚事务

这是我的交易范围源代码的当前架构。第三个插入抛出一个.NET异常(不是SQL异常)并且它没有回滚前两个插入语句。我做错了什么?编辑:我从insert2和insert3中删除了try/catch。我还从insert1try/catch中删除了异常处理实用程序并放置了“throwex”。它仍然没有回滚事务。编辑2:我在Insert3方法中添加了try/catch,并在catch语句中添加了一个“throw”。它仍然没有回滚事务。更新:根据我收到的反馈,“SqlHelper”类使用SqlConnection对象建立与数据库的连接,然后创建一个SqlCommand对象,将CommandType

c# - 在事务中调用多个 SQL Server 存储过程

为了在我当前的项目中使用,我创建了一个允许我调用SQLServer异步的类。我的代码是这样的:internalclassCommandAndCallback{publicSqlCommandSql{get;set;}publicTCallbackCallback{get;set;}publicTErrorError{get;set;}}classMyCodes:SingletonBase{privatestaticstring_connString=@"DataSource=MyDB;InitialCatalog=ED;IntegratedSecurity=True;Asynchron

c# - 会计数据库 - 存储贷方和借方?

当您将交易存储到数据库中时1)您是否将Credit和debit存储在同一记录的两个不同列下?(没有正负号)示例1ATABLENAME......(Credit)null(Debit)100示例1BTABLENAME......(Credit)250(Debit)null或者2)你是否存储1个值,贷方为正,借方为负?示例2ATABLENAME......(Amount)-100示例2BTABLENAME......(Amount)250 最佳答案 会计师(和许多簿记员,如果他们有什么用的话)知道贷方和借方之间绝对没有区别。它们只是值(

C#/SQL 数据库监听器

我需要持续监控数据库行以检查更改(更新)。如果其他来源有一些更改或更新,则应该在我的应用程序上触发该事件(我使用的是WCF)。有没有办法连续监听数据库行的变化?我可能有更多的事件来监视同一个表中的不同行。性能有什么问题吗?我正在使用C#Web服务来监控SQLServer后端。 最佳答案 您可以在各自的表上使用AFTERUPDATE触发器将项目添加到SQLServerServiceBroker队列。然后将排队的通知发送到您的网络服务。另一位发帖人提到了SqlDependency,我也想提一下,但MSDN文档有点奇怪,因为它提供了一个W

C# - System.Transactions.TransactionScope

我对TransactionScope类很好奇。在大多数情况下,我假设它是用于数据库连接(这就是我用它的目的)。我的问题是,您能否将任何代码放入TransactionScope的usingblock中以使其具有事务性?MS文档对此并不清楚。如果它可以用于使除数据库连接之外的代码成为事务性的,那么支持哪些代码?如果它可以使System.IO.File操作具有事务性,这对我来说似乎很疯狂。 最佳答案 TransactionScope不仅适用于数据库。每个实现IEnlistmentNotification接口(interface)的组件都可

c# - 我是否应该始终在 nhibernate 中使用事务(即使是简单的读写)?

我知道对于多部分写入,我应该在nhibernate中使用事务。但是对于简单的读写(1部分)呢……我读到始终使用事务是一种很好的做法。这是必需的吗?我应该做以下简单阅读吗?或者我可以将交易部分全部放在一起吗?publicPrinterJobRetrievePrinterJobById(Guidid){using(ISessionsession=sessionFactory.OpenSession()){using(ITransactiontransaction=session.BeginTransaction()){varprinterJob2=(PrinterJob)session.G

c# - 有没有办法将 TransactionScope 与现有连接一起使用?

我有一些代码的工作方式类似于TransactionScope的建议使用,但具有环境连接而不是环境事务。是否可以通过现有连接使用TransactionScope对象,或者.Net框架中是否有用于此目的的替代方法? 最佳答案 其实有一个方法。connection.EnlistTransaction(Transaction.Current)它有效,并且如果没有必要它不会将事务提升为分布式(与文档所说的相反)HTH 关于c#-有没有办法将TransactionScope与现有连接一起使用?,我们

c# - 在 C# 中使用文件的 TransactionScope

这个问题在这里已经有了答案:HowtowriteatransactiontocoverMovingafileandInsertingrecordindatabase?(4个答案)关闭5年前。我一直在使用TransactionScope处理数据库,感觉不错。我正在寻找的是以下内容:using(varscope=newTransactionScope()){//Dosomethingwithafewfiles...scope.Complete();}但显然这是行不通的——如果有20个文件,并且第9个文件发生异常,所有前面的8个都保持已更改,其余未更改--不执行回滚。那么,为文件实现类似范围