You are developing a Windows Communication Foundation (WCF) service that allows customers to update financial data. The client applications call the service in a transaction. The service contract is defined as follows. (Line numbers are included for reference only.)01 [ServiceContract]02 public interface IDataUpdate03 {04 [OperationContract]05 [TransactionFlow(TransactionFlowOption.Mandatory)]06 void Update(string accountNumber, double amount);07 }0809 ...10 class UpdateService : IDataUpdate11 {12 [OperationBehavior(TransactionScopeRequired = true, TransactionAutoComplete = true)]13 public void Update(string accountNumber, double amount)14 {15 try16 {17 ...18 }19 catch(Exception ex)20 {21 WriteErrorLog(ex);22 ...23 }24 }25 }26Customers report that the transaction completes successfully even if the Update method throws an exception.You need to ensure that the transaction is aborted if the Update method is not successful.What should you do? ()
You are developing a Windows Communication Foundation (WCF) service that allows customers to update financial data. The client applications call the service in a transaction. The service contract is defined as follows. (Line numbers are included for reference only.)
01 [ServiceContract]
02 public interface IDataUpdate
03 {
04 [OperationContract]
05 [TransactionFlow(TransactionFlowOption.Mandatory)]
06 void Update(string accountNumber, double amount);
07 }
08
09 ...
10 class UpdateService : IDataUpdate
11 {
12 [OperationBehavior(TransactionScopeRequired = true, TransactionAutoComplete = true)]13 public void Update(string accountNumber, double amount)
14 {
15 try
16 {
17 ...
18 }
19 catch(Exception ex)
20 {
21 WriteErrorLog(ex);
22 ...
23 }
24 }
25 }
26Customers report that the transaction completes successfully even if the Update method throws an exception.You need to ensure that the transaction is aborted if the Update method is not successful.
What should you do? ()