Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / WF / RunTime / Hosting / WorkflowTransactionService.cs / 1305376 / WorkflowTransactionService.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- #region Using directives using System; using System.Transactions; #endregion namespace System.Workflow.Runtime.Hosting { public abstract class WorkflowCommitWorkBatchService : WorkflowRuntimeService { public delegate void CommitWorkBatchCallback(); virtual internal protected void CommitWorkBatch(CommitWorkBatchCallback commitWorkBatchCallback) { Transaction tx = null; if (null == Transaction.Current) tx = new CommittableTransaction(); else tx = Transaction.Current.DependentClone(DependentCloneOption.BlockCommitUntilComplete); try { using (TransactionScope ts = new TransactionScope(tx)) { commitWorkBatchCallback(); ts.Complete(); } CommittableTransaction committableTransaction = tx as CommittableTransaction; if (committableTransaction != null) committableTransaction.Commit(); DependentTransaction dependentTransaction = tx as DependentTransaction; if (dependentTransaction != null) dependentTransaction.Complete(); } catch (Exception e) { tx.Rollback(e); throw; } finally { if (tx != null) { tx.Dispose(); } } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- MouseActionValueSerializer.cs
- ToolStrip.cs
- InsufficientMemoryException.cs
- DockingAttribute.cs
- DocumentXPathNavigator.cs
- ColorConvertedBitmap.cs
- DataGrid.cs
- CodeDomExtensionMethods.cs
- EntityContainerEntitySet.cs
- ControlFilterExpression.cs
- ReadOnlyTernaryTree.cs
- ListItemCollection.cs
- BaseComponentEditor.cs
- DataViewListener.cs
- SourceChangedEventArgs.cs
- TemplateControlCodeDomTreeGenerator.cs
- dbdatarecord.cs
- HostedHttpRequestAsyncResult.cs
- StreamInfo.cs
- Listbox.cs
- HttpCacheVaryByContentEncodings.cs
- DbExpressionBuilder.cs
- DataGridHeaderBorder.cs
- XmlnsCache.cs
- StylusButtonEventArgs.cs
- EntityCollectionChangedParams.cs
- DataControlPagerLinkButton.cs
- Timeline.cs
- AddInAttribute.cs
- ChineseLunisolarCalendar.cs
- ThemeInfoAttribute.cs
- DataObjectPastingEventArgs.cs
- SerializationSectionGroup.cs
- GroupBoxAutomationPeer.cs
- NameTable.cs
- XslCompiledTransform.cs
- DataGridViewComboBoxColumn.cs
- RadialGradientBrush.cs
- ConnectionConsumerAttribute.cs
- XMLDiffLoader.cs
- ConfigurationValue.cs
- SqlClientMetaDataCollectionNames.cs
- TextTreeTextBlock.cs
- XmlAttribute.cs
- TextTreeTextNode.cs
- IdentityValidationException.cs
- HebrewCalendar.cs
- PrimitiveType.cs
- DecoderNLS.cs
- CodeNamespaceCollection.cs
- BindingContext.cs
- CompoundFileDeflateTransform.cs
- ImpersonateTokenRef.cs
- DispatcherEventArgs.cs
- SafePipeHandle.cs
- RotationValidation.cs
- PackWebRequestFactory.cs
- HostAdapter.cs
- PreservationFileReader.cs
- ListenerAdapterBase.cs
- EmptyCollection.cs
- ADMembershipUser.cs
- HtmlControl.cs
- Type.cs
- WebPartAuthorizationEventArgs.cs
- DropShadowBitmapEffect.cs
- Panel.cs
- TypeSystem.cs
- ProxyWebPartManager.cs
- validationstate.cs
- DoneReceivingAsyncResult.cs
- HwndTarget.cs
- RoleExceptions.cs
- FileLoadException.cs
- UnescapedXmlDiagnosticData.cs
- ResourceDescriptionAttribute.cs
- ExceptionUtil.cs
- MetafileHeader.cs
- XmlReturnWriter.cs
- TraceHandler.cs
- FontDriver.cs
- RegistryKey.cs
- DBSchemaRow.cs
- FrameworkPropertyMetadata.cs
- SoapAttributeOverrides.cs
- UnsafeNativeMethods.cs
- graph.cs
- ConnectionManagementElementCollection.cs
- URI.cs
- CaseInsensitiveComparer.cs
- SQLRoleProvider.cs
- MimeObjectFactory.cs
- DispatchWrapper.cs
- Process.cs
- SupportsEventValidationAttribute.cs
- _NetworkingPerfCounters.cs
- RegistryKey.cs
- PrintController.cs
- KeyPressEvent.cs
- RawAppCommandInputReport.cs