Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / WCF / Serialization / System / Runtime / Serialization / SpecialTypeDataContract.cs / 1305376 / SpecialTypeDataContract.cs
//------------------------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------------------------- namespace System.Runtime.Serialization { using System; using System.Collections.Generic; using System.Text; using System.Xml; using System.Security; sealed class SpecialTypeDataContract : DataContract { [Fx.Tag.SecurityNote(Critical = "Holds instance of CriticalHelper which keeps state that is cached statically for serialization." + " Static fields are marked SecurityCritical or readonly to prevent data from being modified or leaked to other components in appdomain.")] [SecurityCritical] SpecialTypeDataContractCriticalHelper helper; [Fx.Tag.SecurityNote(Critical = "Initializes SecurityCritical field 'helper'.", Safe = "Doesn't leak anything.")] [SecuritySafeCritical] public SpecialTypeDataContract(Type type) : base(new SpecialTypeDataContractCriticalHelper(type)) { helper = base.Helper as SpecialTypeDataContractCriticalHelper; } [Fx.Tag.SecurityNote(Critical = "Initializes SecurityCritical field 'helper'.", Safe = "Doesn't leak anything.")] [SecuritySafeCritical] public SpecialTypeDataContract(Type type, XmlDictionaryString name, XmlDictionaryString ns) : base(new SpecialTypeDataContractCriticalHelper(type, name, ns)) { helper = base.Helper as SpecialTypeDataContractCriticalHelper; } internal override bool IsBuiltInDataContract { get { return true; } } [Fx.Tag.SecurityNote(Critical = "Holds all state used for for (de)serializing known types like System.Enum, System.ValueType, etc." + " Since the data is cached statically, we lock down access to it.")] [SecurityCritical(SecurityCriticalScope.Everything)] class SpecialTypeDataContractCriticalHelper : DataContract.DataContractCriticalHelper { internal SpecialTypeDataContractCriticalHelper(Type type) : base(type) { } internal SpecialTypeDataContractCriticalHelper(Type type, XmlDictionaryString name, XmlDictionaryString ns) : base(type) { SetDataContractName(name, ns); } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------------------------- namespace System.Runtime.Serialization { using System; using System.Collections.Generic; using System.Text; using System.Xml; using System.Security; sealed class SpecialTypeDataContract : DataContract { [Fx.Tag.SecurityNote(Critical = "Holds instance of CriticalHelper which keeps state that is cached statically for serialization." + " Static fields are marked SecurityCritical or readonly to prevent data from being modified or leaked to other components in appdomain.")] [SecurityCritical] SpecialTypeDataContractCriticalHelper helper; [Fx.Tag.SecurityNote(Critical = "Initializes SecurityCritical field 'helper'.", Safe = "Doesn't leak anything.")] [SecuritySafeCritical] public SpecialTypeDataContract(Type type) : base(new SpecialTypeDataContractCriticalHelper(type)) { helper = base.Helper as SpecialTypeDataContractCriticalHelper; } [Fx.Tag.SecurityNote(Critical = "Initializes SecurityCritical field 'helper'.", Safe = "Doesn't leak anything.")] [SecuritySafeCritical] public SpecialTypeDataContract(Type type, XmlDictionaryString name, XmlDictionaryString ns) : base(new SpecialTypeDataContractCriticalHelper(type, name, ns)) { helper = base.Helper as SpecialTypeDataContractCriticalHelper; } internal override bool IsBuiltInDataContract { get { return true; } } [Fx.Tag.SecurityNote(Critical = "Holds all state used for for (de)serializing known types like System.Enum, System.ValueType, etc." + " Since the data is cached statically, we lock down access to it.")] [SecurityCritical(SecurityCriticalScope.Everything)] class SpecialTypeDataContractCriticalHelper : DataContract.DataContractCriticalHelper { internal SpecialTypeDataContractCriticalHelper(Type type) : base(type) { } internal SpecialTypeDataContractCriticalHelper(Type type, XmlDictionaryString name, XmlDictionaryString ns) : base(type) { SetDataContractName(name, ns); } } } } // 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
- IntegerFacetDescriptionElement.cs
- XmlCharacterData.cs
- CustomErrorCollection.cs
- InkCanvasInnerCanvas.cs
- RichTextBox.cs
- ApplicationHost.cs
- GZipStream.cs
- DeferredReference.cs
- SqlRecordBuffer.cs
- SeverityFilter.cs
- SerialReceived.cs
- ThreadStaticAttribute.cs
- KeyValuePairs.cs
- HandlerFactoryCache.cs
- BrowserCapabilitiesCompiler.cs
- ProxySimple.cs
- DataListItemEventArgs.cs
- AuthenticationSection.cs
- DataContractSerializerOperationGenerator.cs
- WebBrowserHelper.cs
- XmlSerializer.cs
- XmlSchemaSimpleType.cs
- ColumnMapProcessor.cs
- PtsHost.cs
- FixedSchema.cs
- TdsEnums.cs
- HttpApplicationFactory.cs
- CompositeKey.cs
- X509InitiatorCertificateServiceElement.cs
- PageTheme.cs
- SatelliteContractVersionAttribute.cs
- PingOptions.cs
- CallbackBehaviorAttribute.cs
- MailAddressCollection.cs
- PresentationAppDomainManager.cs
- PropertyChange.cs
- ReferencedType.cs
- QueryExpression.cs
- XmlSerializerVersionAttribute.cs
- TimeoutValidationAttribute.cs
- CachedFontFamily.cs
- ValidationErrorCollection.cs
- Storyboard.cs
- TransactionInterop.cs
- LineMetrics.cs
- AttributeEmitter.cs
- OrderedDictionary.cs
- AsyncOperationContext.cs
- Figure.cs
- ArgumentException.cs
- Suspend.cs
- WizardStepBase.cs
- AsyncStreamReader.cs
- UnconditionalPolicy.cs
- PrimitiveXmlSerializers.cs
- PeerTransportSecuritySettings.cs
- PropagatorResult.cs
- RecognizedAudio.cs
- ByteAnimation.cs
- PreDigestedSignedInfo.cs
- ScrollChrome.cs
- SecuritySessionClientSettings.cs
- CompilationLock.cs
- __ComObject.cs
- SqlClientWrapperSmiStream.cs
- HtmlMeta.cs
- WindowsTreeView.cs
- QueryResults.cs
- ConfigXmlText.cs
- StylesEditorDialog.cs
- EndEvent.cs
- AnnotationResource.cs
- NamedPipeHostedTransportConfiguration.cs
- DispatchWrapper.cs
- ControlParser.cs
- validationstate.cs
- odbcmetadatacollectionnames.cs
- IsolatedStorageException.cs
- AnyReturnReader.cs
- PerspectiveCamera.cs
- Dictionary.cs
- DbConnectionPoolOptions.cs
- BitStack.cs
- basecomparevalidator.cs
- FixUp.cs
- EdmConstants.cs
- Page.cs
- HttpCachePolicyElement.cs
- CopyNamespacesAction.cs
- LayoutEditorPart.cs
- TypeInitializationException.cs
- DetailsView.cs
- ParseChildrenAsPropertiesAttribute.cs
- MetadataItem.cs
- SerializationObjectManager.cs
- GridViewSelectEventArgs.cs
- SqlVersion.cs
- RootDesignerSerializerAttribute.cs
- SqlUtil.cs
- BitmapEffectCollection.cs