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
- PropertyChangedEventManager.cs
- CellQuery.cs
- Wildcard.cs
- TextProperties.cs
- TextRunCacheImp.cs
- ShaperBuffers.cs
- CaseInsensitiveOrdinalStringComparer.cs
- _NTAuthentication.cs
- SourceChangedEventArgs.cs
- DynamicValueConverter.cs
- XmlLangPropertyAttribute.cs
- CancelEventArgs.cs
- SerializationHelper.cs
- SoapObjectWriter.cs
- ContractInferenceHelper.cs
- User.cs
- RegexCompiler.cs
- TemplateBindingExpression.cs
- ItemCollection.cs
- DescriptionAttribute.cs
- WriteTimeStream.cs
- CLRBindingWorker.cs
- CodeComment.cs
- AnonymousIdentificationSection.cs
- BufferedReadStream.cs
- DateTimeFormatInfo.cs
- TabletDeviceInfo.cs
- ConfigXmlCDataSection.cs
- SByteStorage.cs
- COM2Properties.cs
- SiteIdentityPermission.cs
- KeyGestureValueSerializer.cs
- DoubleCollectionConverter.cs
- TableProviderWrapper.cs
- ListViewItem.cs
- NavigationHelper.cs
- UrlAuthFailedErrorFormatter.cs
- AssociationTypeEmitter.cs
- TransactionManager.cs
- MatrixCamera.cs
- ValidatingReaderNodeData.cs
- StrongNameMembershipCondition.cs
- JoinElimination.cs
- DesignObjectWrapper.cs
- IntAverageAggregationOperator.cs
- _TransmitFileOverlappedAsyncResult.cs
- WorkflowTransactionOptions.cs
- Object.cs
- SqlUdtInfo.cs
- precedingsibling.cs
- DoubleUtil.cs
- ConfigurationException.cs
- DataMisalignedException.cs
- COM2PropertyDescriptor.cs
- EncodingTable.cs
- BooleanFunctions.cs
- ParameterBinding.cs
- SingleKeyFrameCollection.cs
- BindingCollection.cs
- QuotedStringWriteStateInfo.cs
- HttpRequest.cs
- CodeTypeDeclarationCollection.cs
- OracleRowUpdatingEventArgs.cs
- AppDomainAttributes.cs
- DataGridViewColumnDesigner.cs
- EnlistmentState.cs
- LexicalChunk.cs
- FixedElement.cs
- SessionStateContainer.cs
- CallContext.cs
- DecimalMinMaxAggregationOperator.cs
- Scheduling.cs
- HttpModuleCollection.cs
- ForEachDesigner.xaml.cs
- QueryCacheKey.cs
- Pens.cs
- LoginNameDesigner.cs
- SelectionEditingBehavior.cs
- SafePointer.cs
- SqlCacheDependencyDatabase.cs
- RemoteCryptoDecryptRequest.cs
- DataGridComponentEditor.cs
- PixelShader.cs
- ToolStripItemClickedEventArgs.cs
- InstalledVoice.cs
- BindingContext.cs
- Attachment.cs
- ParserStack.cs
- HyperLinkField.cs
- RuntimeArgumentHandle.cs
- XsdValidatingReader.cs
- SqlLiftIndependentRowExpressions.cs
- CompoundFileReference.cs
- ToolStripLabel.cs
- RC2CryptoServiceProvider.cs
- MatrixTransform3D.cs
- XmlCustomFormatter.cs
- DisplayNameAttribute.cs
- SoapFormatterSinks.cs
- AuthenticationServiceManager.cs