Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / xsp / System / Extensions / Script / Services / WebServiceEnumData.cs / 1305376 / WebServiceEnumData.cs
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//-----------------------------------------------------------------------------
using System.Globalization;
namespace System.Web.Script.Services {
using System;
internal class WebServiceEnumData : WebServiceTypeData {
bool isULong;
string[] names;
long[] values;
internal WebServiceEnumData(string typeName, string typeNamespace, string[] names, long[] values, bool isULong)
: base(typeName, typeNamespace) {
InitWebServiceEnumData(names, values, isULong);
}
internal WebServiceEnumData(string typeName, string typeNamespace, Type t, string[] names, long[] values, bool isULong)
: base(typeName, typeNamespace, t) {
InitWebServiceEnumData(names, values, isULong);
}
internal WebServiceEnumData(string typeName, string typeNamespace, string[] names, Array values, bool isULong)
: base(typeName, typeNamespace) {
InitWebServiceEnumData(names, values, isULong);
}
internal WebServiceEnumData(string typeName, string typeNamespace, Type t, string[] names, Array values, bool isULong)
: base(typeName, typeNamespace) {
InitWebServiceEnumData(names, values, isULong);
}
internal bool IsULong {
get {
return isULong;
}
}
internal string[] Names {
get {
return names;
}
}
internal long[] Values {
get {
return values;
}
}
private void InitWebServiceEnumData(string[] names, long[] values, bool isULong) {
System.Diagnostics.Debug.Assert(names != null);
System.Diagnostics.Debug.Assert(values != null);
System.Diagnostics.Debug.Assert(names.Length == values.Length);
this.names = names;
this.values = values;
this.isULong = isULong;
}
private void InitWebServiceEnumData(string[] names, Array values, bool isULong) {
System.Diagnostics.Debug.Assert(names != null);
System.Diagnostics.Debug.Assert(values != null);
System.Diagnostics.Debug.Assert(names.Length == values.Length);
this.names = names;
this.values = new long[values.Length];
for (int i = 0; i < values.Length; i++) {
object enumValue = values.GetValue(i);
if (isULong) {
this.values[i] = (long)((IConvertible)enumValue).ToUInt64(CultureInfo.InvariantCulture);
}
else {
this.values[i] = ((IConvertible)enumValue).ToInt64(CultureInfo.InvariantCulture);
}
}
this.isULong = isULong;
}
}
}
// 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
- LocalValueEnumerator.cs
- SHA1.cs
- ViewStateModeByIdAttribute.cs
- LinearGradientBrush.cs
- ContentElement.cs
- InvalidWorkflowException.cs
- FormViewModeEventArgs.cs
- EncryptedData.cs
- UInt16.cs
- Int32CollectionValueSerializer.cs
- IImplicitResourceProvider.cs
- RegexTypeEditor.cs
- IISUnsafeMethods.cs
- DeclaredTypeValidator.cs
- HttpWebRequestElement.cs
- DataGridViewRowPostPaintEventArgs.cs
- TableLayoutCellPaintEventArgs.cs
- PathFigureCollection.cs
- PageThemeCodeDomTreeGenerator.cs
- VisualState.cs
- CompilationUtil.cs
- MimeTypePropertyAttribute.cs
- KoreanCalendar.cs
- TableLayoutSettings.cs
- WebPartConnectVerb.cs
- PropertyInformation.cs
- CodeGeneratorOptions.cs
- TextProperties.cs
- FreezableOperations.cs
- RootNamespaceAttribute.cs
- DataFormats.cs
- TextLineResult.cs
- CommentAction.cs
- ILGen.cs
- TextTreeUndo.cs
- XmlSchemaParticle.cs
- ThumbButtonInfo.cs
- LoadWorkflowCommand.cs
- XmlEncoding.cs
- TypeDescriptor.cs
- ProtocolsConfiguration.cs
- HeaderedContentControl.cs
- ContractValidationHelper.cs
- TraceUtils.cs
- StringInfo.cs
- ResourceReader.cs
- _IPv4Address.cs
- TextBoxBase.cs
- SqlIdentifier.cs
- CompilerParameters.cs
- ELinqQueryState.cs
- GlobalProxySelection.cs
- TraceHandler.cs
- Process.cs
- TabItemAutomationPeer.cs
- ActionNotSupportedException.cs
- PrintDialogException.cs
- QilPatternVisitor.cs
- ProviderUtil.cs
- EntityKeyElement.cs
- XmlEntity.cs
- DtdParser.cs
- LinqDataSourceStatusEventArgs.cs
- InstanceNotFoundException.cs
- DrawListViewItemEventArgs.cs
- LayoutSettings.cs
- PolyQuadraticBezierSegment.cs
- XmlChildEnumerator.cs
- LassoSelectionBehavior.cs
- CallContext.cs
- SeekStoryboard.cs
- UnsafeNativeMethods.cs
- NumericUpDownAccelerationCollection.cs
- PathSegmentCollection.cs
- Calendar.cs
- SQLByteStorage.cs
- SharedUtils.cs
- XmlSchemaAnnotation.cs
- AnnotationAuthorChangedEventArgs.cs
- StaticSiteMapProvider.cs
- MarkupExtensionReturnTypeAttribute.cs
- PerformanceCounterLib.cs
- SymmetricAlgorithm.cs
- InputBuffer.cs
- PreviewPageInfo.cs
- ParsedAttributeCollection.cs
- TableCell.cs
- Base64Encoder.cs
- SettingsSection.cs
- CompositeCollectionView.cs
- ConstructorBuilder.cs
- EntryIndex.cs
- SmiGettersStream.cs
- _DomainName.cs
- PreservationFileWriter.cs
- QueryOperationResponseOfT.cs
- EventProxy.cs
- RemoteCryptoSignHashRequest.cs
- CodePropertyReferenceExpression.cs
- AutomationElementCollection.cs