Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / NetFx40 / System.Activities.DurableInstancing / System / Activities / DurableInstancing / CorrelationKey.cs / 1305376 / CorrelationKey.cs
//------------------------------------------------------------------------------
// Copyright (c) Microsoft Corporation. All rights reserved.
//-----------------------------------------------------------------------------
namespace System.Activities.DurableInstancing
{
using System;
using System.Collections.Generic;
using System.Globalization;
using System.Linq;
using System.Runtime;
using System.Xml;
using System.Xml.Linq;
using System.Xml.Serialization;
using System.Runtime.DurableInstancing;
sealed class CorrelationKey
{
public CorrelationKey(Guid keyId)
: this(keyId, null, InstanceEncodingOption.None)
{
}
public CorrelationKey(Guid keyId, IDictionary keyMetadata, InstanceEncodingOption encodingOption)
{
this.KeyId = keyId;
this.BinaryData = SerializationUtilities.SerializeKeyMetadata(keyMetadata, encodingOption);
}
public Guid KeyId
{
get;
set;
}
public long StartPosition
{
get;
set;
}
public ArraySegment BinaryData
{
get;
set;
}
public void SerializeToXmlElement(XmlWriter xmlWriter)
{
xmlWriter.WriteStartElement("CorrelationKey");
xmlWriter.WriteAttributeString("KeyId", this.KeyId.ToString());
if (this.BinaryData.Array != null)
{
xmlWriter.WriteAttributeString("StartPosition", this.StartPosition.ToString(CultureInfo.InvariantCulture));
xmlWriter.WriteAttributeString("BinaryLength", this.BinaryData.Count.ToString(CultureInfo.InvariantCulture));
}
xmlWriter.WriteEndElement();
}
public static List BuildKeyList(ICollection keys)
{
List result = null;
if (keys != null)
{
result = new List(keys.Count);
foreach (Guid guid in keys)
{
result.Add(new CorrelationKey(guid));
}
}
else
{
result = new List();
}
return result;
}
public static List BuildKeyList(IDictionary> keys, InstanceEncodingOption encodingOption)
{
List result = new List();
if (keys != null)
{
foreach (KeyValuePair> keyValuePair in keys)
{
result.Add(new CorrelationKey(keyValuePair.Key, keyValuePair.Value, encodingOption));
}
}
return result;
}
}
}
// 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
- codemethodreferenceexpression.cs
- datacache.cs
- NotifyIcon.cs
- SessionState.cs
- Debug.cs
- ThreadAbortException.cs
- SqlUtils.cs
- ProviderSettings.cs
- SqlBulkCopyColumnMappingCollection.cs
- TimeSpanSecondsConverter.cs
- SortedSet.cs
- ContentIterators.cs
- DispatcherExceptionEventArgs.cs
- SetterTriggerConditionValueConverter.cs
- GestureRecognitionResult.cs
- _CommandStream.cs
- TabletCollection.cs
- HtmlInputReset.cs
- QilIterator.cs
- IODescriptionAttribute.cs
- ContentElement.cs
- LinqExpressionNormalizer.cs
- DependencyObjectValidator.cs
- DataGridAutoFormatDialog.cs
- OdbcReferenceCollection.cs
- TextServicesContext.cs
- InlinedAggregationOperator.cs
- DocobjHost.cs
- DBDataPermissionAttribute.cs
- SessionEndingCancelEventArgs.cs
- ScalarConstant.cs
- ObjectStateEntryOriginalDbUpdatableDataRecord.cs
- CodeConstructor.cs
- DirectionalLight.cs
- __Filters.cs
- PerformanceCounterPermissionAttribute.cs
- FixedSOMPageElement.cs
- ProviderUtil.cs
- _AutoWebProxyScriptEngine.cs
- ListCollectionView.cs
- ConfigurationValues.cs
- LogSwitch.cs
- TextRangeEdit.cs
- CorrelationRequestContext.cs
- WebPartConnectionCollection.cs
- _HeaderInfoTable.cs
- ColumnCollection.cs
- GradientSpreadMethodValidation.cs
- WebBaseEventKeyComparer.cs
- ReadOnlyHierarchicalDataSource.cs
- OneOfScalarConst.cs
- GrammarBuilderRuleRef.cs
- OverflowException.cs
- PopupControlService.cs
- AuthStoreRoleProvider.cs
- Section.cs
- BitmapCacheBrush.cs
- ReliableChannelFactory.cs
- CommonDialog.cs
- Rotation3DKeyFrameCollection.cs
- ErrorFormatter.cs
- SoapExtensionTypeElementCollection.cs
- DrawItemEvent.cs
- IsolatedStorageFilePermission.cs
- ComplexBindingPropertiesAttribute.cs
- MenuRendererStandards.cs
- StringHelper.cs
- BrowserCapabilitiesCodeGenerator.cs
- LineInfo.cs
- JournalEntry.cs
- CompModHelpers.cs
- AnimationClock.cs
- shaperfactoryquerycachekey.cs
- COMException.cs
- _OSSOCK.cs
- _ReceiveMessageOverlappedAsyncResult.cs
- SizeAnimation.cs
- ServiceMetadataPublishingElement.cs
- DocumentGridPage.cs
- UserControlAutomationPeer.cs
- DataServiceProcessingPipelineEventArgs.cs
- CodeValidator.cs
- DirectoryRedirect.cs
- ErrorFormatterPage.cs
- NewItemsContextMenuStrip.cs
- TemplatePartAttribute.cs
- PrivateUnsafeNativeCompoundFileMethods.cs
- RelatedEnd.cs
- DataGridViewTextBoxColumn.cs
- EventLogRecord.cs
- GridViewCancelEditEventArgs.cs
- PolyQuadraticBezierSegment.cs
- TableDetailsCollection.cs
- AssemblySettingAttributes.cs
- CharEnumerator.cs
- ReadOnlyObservableCollection.cs
- SelectionItemPattern.cs
- EventDescriptorCollection.cs
- EntityReference.cs
- WebHeaderCollection.cs