Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / ServiceModel / System / ServiceModel / TypedCompletedAsyncResult.cs / 1 / TypedCompletedAsyncResult.cs
//----------------------------------------------------------------------------
// Copyright (c) Microsoft Corporation. All rights reserved.
//---------------------------------------------------------------------------
namespace System.ServiceModel
{
class TypedCompletedAsyncResult : TypedAsyncResult
{
public TypedCompletedAsyncResult(T data, AsyncCallback callback, object state)
: base(callback, state)
{
Complete(data, true);
}
public new static T End(IAsyncResult result)
{
TypedCompletedAsyncResult completedResult = result as TypedCompletedAsyncResult;
if (completedResult == null)
{
throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new ArgumentException(SR.GetString(SR.InvalidAsyncResult), "result"));
}
return TypedAsyncResult.End(completedResult);
}
}
class TypedCompletedAsyncResult : TypedAsyncResult
{
U parameter;
public TypedCompletedAsyncResult(T data, U parameter, AsyncCallback callback, object state)
: base(callback, state)
{
this.parameter = parameter;
Complete(data, true);
}
public static T End(IAsyncResult result, out U parameter)
{
if (result == null)
{
throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new ArgumentNullException("result"));
}
TypedCompletedAsyncResult completedResult = result as TypedCompletedAsyncResult;
if (completedResult == null)
{
throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new ArgumentException(SR.GetString(SR.InvalidAsyncResult), "result"));
}
parameter = completedResult.parameter;
return TypedAsyncResult.End(completedResult);
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
// Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ComplexBindingPropertiesAttribute.cs
- CodeTypeDelegate.cs
- ColorBlend.cs
- TagPrefixCollection.cs
- SmtpNetworkElement.cs
- EventDescriptorCollection.cs
- EnumCodeDomSerializer.cs
- Connection.cs
- CacheSection.cs
- Schema.cs
- CLRBindingWorker.cs
- objectresult_tresulttype.cs
- ControllableStoryboardAction.cs
- GradientSpreadMethodValidation.cs
- ChangePasswordDesigner.cs
- OleDbConnectionPoolGroupProviderInfo.cs
- BindingManagerDataErrorEventArgs.cs
- StreamMarshaler.cs
- XmlUtf8RawTextWriter.cs
- XmlJsonReader.cs
- Conditional.cs
- RuntimeIdentifierPropertyAttribute.cs
- XmlNamedNodeMap.cs
- Timer.cs
- WebResourceAttribute.cs
- DataGridItemAttachedStorage.cs
- TextFormatterHost.cs
- OneToOneMappingSerializer.cs
- SafeBitVector32.cs
- LoginUtil.cs
- FixedHyperLink.cs
- SqlUserDefinedAggregateAttribute.cs
- ClientSession.cs
- LightweightCodeGenerator.cs
- EntityException.cs
- SecurityElement.cs
- IgnoreFileBuildProvider.cs
- InputProcessorProfiles.cs
- BindingNavigator.cs
- GlobalizationAssembly.cs
- InfoCardSchemas.cs
- FigureParaClient.cs
- TextServicesProperty.cs
- VirtualPathProvider.cs
- StateWorkerRequest.cs
- Pen.cs
- StateBag.cs
- Crypto.cs
- SimpleBitVector32.cs
- AssemblyName.cs
- DataSetMappper.cs
- PropertyExpression.cs
- ListViewTableCell.cs
- TemplateBindingExtensionConverter.cs
- CredentialCache.cs
- AppDomainAttributes.cs
- PassportAuthenticationEventArgs.cs
- StyleHelper.cs
- DependentList.cs
- ProcessHostFactoryHelper.cs
- QuadTree.cs
- XmlName.cs
- Win32SafeHandles.cs
- WebPartTransformerAttribute.cs
- Converter.cs
- AggregateNode.cs
- HttpCacheVary.cs
- BaseContextMenu.cs
- EpmCustomContentDeSerializer.cs
- UnsafeNativeMethods.cs
- FilterElement.cs
- HttpServerChannel.cs
- OuterGlowBitmapEffect.cs
- CodeGeneratorAttribute.cs
- DetailsViewCommandEventArgs.cs
- CssStyleCollection.cs
- HtmlElement.cs
- PropertyToken.cs
- PreloadHost.cs
- Route.cs
- RMPublishingDialog.cs
- ContractMapping.cs
- Header.cs
- SignatureDescription.cs
- Typeface.cs
- VisualTreeUtils.cs
- DeferrableContent.cs
- Stopwatch.cs
- GridSplitter.cs
- BackoffTimeoutHelper.cs
- ExpressionSelection.cs
- ReadContentAsBinaryHelper.cs
- BitSet.cs
- SafeIUnknown.cs
- CursorInteropHelper.cs
- DbModificationCommandTree.cs
- Rule.cs
- FullTextBreakpoint.cs
- TableLayoutSettings.cs
- LockedBorderGlyph.cs