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
- XPathScanner.cs
- HttpResponse.cs
- TagPrefixAttribute.cs
- FixedSchema.cs
- PenThread.cs
- HwndStylusInputProvider.cs
- MethodRental.cs
- ExtensionSimplifierMarkupObject.cs
- AxHost.cs
- ExtensionFile.cs
- PersistenceProviderElement.cs
- Serializer.cs
- NamespaceTable.cs
- CharConverter.cs
- DeviceSpecificChoiceCollection.cs
- RangeValidator.cs
- MsmqIntegrationSecurityElement.cs
- SqlBuffer.cs
- UTF8Encoding.cs
- PenContext.cs
- documentation.cs
- METAHEADER.cs
- WebFaultClientMessageInspector.cs
- AnnotationResourceChangedEventArgs.cs
- WebPartZoneCollection.cs
- BaseValidator.cs
- TextLine.cs
- RectangleGeometry.cs
- DeviceSpecificDialogCachedState.cs
- Transform.cs
- ValidationErrorCollection.cs
- SamlAttributeStatement.cs
- MenuCommand.cs
- InkCanvasInnerCanvas.cs
- ZoneMembershipCondition.cs
- EnumBuilder.cs
- XmlElementAttributes.cs
- StoryFragments.cs
- CompensationDesigner.cs
- AsymmetricSignatureFormatter.cs
- DataViewManager.cs
- ClockGroup.cs
- DefaultTraceListener.cs
- InternalBufferOverflowException.cs
- PaintValueEventArgs.cs
- Crc32Helper.cs
- NotifyInputEventArgs.cs
- XhtmlBasicTextBoxAdapter.cs
- OdbcCommandBuilder.cs
- EraserBehavior.cs
- MessageBodyDescription.cs
- ServiceDiscoveryElement.cs
- SizeAnimationUsingKeyFrames.cs
- VisemeEventArgs.cs
- TemplateControl.cs
- SessionPageStatePersister.cs
- CatalogZoneDesigner.cs
- NativeMethods.cs
- WrapPanel.cs
- basecomparevalidator.cs
- ReadOnlyCollection.cs
- DataContractJsonSerializer.cs
- CngKeyBlobFormat.cs
- InternalSafeNativeMethods.cs
- UserControl.cs
- DependencySource.cs
- KeyTimeConverter.cs
- DataGridColumnHeadersPresenter.cs
- WindowsComboBox.cs
- WorkflowMarkupSerializationException.cs
- TextEvent.cs
- InputManager.cs
- SelectionChangedEventArgs.cs
- indexingfiltermarshaler.cs
- SystemBrushes.cs
- DbConnectionPoolGroup.cs
- DataListItem.cs
- OleDbMetaDataFactory.cs
- TypeForwardedFromAttribute.cs
- TextCompositionManager.cs
- Message.cs
- ContractBase.cs
- SwitchLevelAttribute.cs
- GridViewEditEventArgs.cs
- EntityDataSourceContextDisposingEventArgs.cs
- GeneratedCodeAttribute.cs
- ButtonField.cs
- KnownTypesProvider.cs
- ServiceOperation.cs
- ProviderConnectionPointCollection.cs
- AliasGenerator.cs
- DelegateSerializationHolder.cs
- DemultiplexingDispatchMessageFormatter.cs
- TripleDES.cs
- NullRuntimeConfig.cs
- XmlAnyElementAttributes.cs
- InOutArgument.cs
- TextWriter.cs
- AutoGeneratedField.cs
- DataBindingCollectionConverter.cs