Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 将事务(或任何其他对象)传递给属性?_C#_.net_Properties - Fatal编程技术网

C# 将事务(或任何其他对象)传递给属性?

C# 将事务(或任何其他对象)传递给属性?,c#,.net,properties,C#,.net,Properties,我有一个带有set和get方法的属性,它将数据加载(在get中)并保存(在set中)到数据库中。现在我想把它放在一个事务中,在我的例子中是一个IDB事务。问题是,如何将我的事务对象赋予属性?我已经在使用属性的代码中有了事务 谢谢:)您是否尝试过系统.Transactions.Transaction.Current?它是一个静态属性,有文档记录您可以使用对象包装对属性的调用。using块中的任何调用都将是事务的一部分 using (TransactionScope scope = new Tran

我有一个带有set和get方法的属性,它将数据加载(在get中)并保存(在set中)到数据库中。现在我想把它放在一个事务中,在我的例子中是一个IDB事务。问题是,如何将我的事务对象赋予属性?我已经在使用属性的代码中有了事务


谢谢:)

您是否尝试过系统.Transactions.Transaction.Current?它是一个静态属性,有文档记录

您可以使用对象包装对属性的调用。using块中的任何调用都将是事务的一部分

using (TransactionScope scope = new TransactionScope())
{
   // call properties and other code

   scope.Complete(); // needed or transaction rolls back
}

在setter中保存到DB?你简直要下地狱了!;)属性应该是轻量级的。我所见过的一些最糟糕的编码错误是由于属性做得太多,并且有副作用。当您需要向属性传递参数时,这通常是一个很好的指示,属性应该是一个方法,所以我有一个Set方法和一个Get方法,它以param的形式获取事务,并执行DB填充?