Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / Serialization / System / Runtime / Serialization / SpecialTypeDataContract.cs / 1 / SpecialTypeDataContract.cs
//------------------------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------------------------- using System; using System.Collections.Generic; using System.Text; using System.Xml; using System.Security; namespace System.Runtime.Serialization { internal sealed class SpecialTypeDataContract : DataContract { ////// 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; ////// Critical - initializes SecurityCritical field 'helper' /// Safe - doesn't leak anything /// [SecurityCritical, SecurityTreatAsSafe] public SpecialTypeDataContract(Type type) : base(new SpecialTypeDataContractCriticalHelper(type)) { helper = base.Helper as SpecialTypeDataContractCriticalHelper; } ////// Critical - initializes SecurityCritical field 'helper' /// Safe - doesn't leak anything /// [SecurityCritical, SecurityTreatAsSafe] 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; } } ////// 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.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ExpressionBindings.cs
- HostedElements.cs
- ColumnProvider.cs
- GenericEnumerator.cs
- MeasureData.cs
- ObjectContextServiceProvider.cs
- BrowserInteropHelper.cs
- SQLBytesStorage.cs
- IntegerValidatorAttribute.cs
- RoleManagerSection.cs
- PointLight.cs
- CommandDevice.cs
- BaseParser.cs
- CatalogPart.cs
- PagePropertiesChangingEventArgs.cs
- DocumentEventArgs.cs
- SourceCollection.cs
- SQLDouble.cs
- ActivationArguments.cs
- TemplateBuilder.cs
- GridSplitter.cs
- Listbox.cs
- CodeVariableDeclarationStatement.cs
- DrawingImage.cs
- ControlLocalizer.cs
- OleDbStruct.cs
- OleDbReferenceCollection.cs
- DataKeyCollection.cs
- UniqueID.cs
- ObjectConverter.cs
- parserscommon.cs
- Unit.cs
- GetReadStreamResult.cs
- TemplateControlCodeDomTreeGenerator.cs
- ToolStripItemEventArgs.cs
- odbcmetadatacollectionnames.cs
- XmlQuerySequence.cs
- _SslState.cs
- SqlMethodCallConverter.cs
- ProxyGenerator.cs
- SerializationFieldInfo.cs
- __ConsoleStream.cs
- QueryableDataSourceEditData.cs
- ControlIdConverter.cs
- TableCell.cs
- VectorValueSerializer.cs
- GridPattern.cs
- QuerySelectOp.cs
- mediaclock.cs
- WebPartCancelEventArgs.cs
- DataError.cs
- StrokeCollectionConverter.cs
- InputLanguage.cs
- SqlBooleanMismatchVisitor.cs
- FontWeights.cs
- ReadOnlyCollection.cs
- ControlLocalizer.cs
- UIElement3D.cs
- IPPacketInformation.cs
- KeyedHashAlgorithm.cs
- NavigationExpr.cs
- Activator.cs
- DatatypeImplementation.cs
- Deserializer.cs
- AssemblyResolver.cs
- CompositeScriptReference.cs
- SpinLock.cs
- GeneratedCodeAttribute.cs
- ServiceSecurityAuditElement.cs
- GridViewDeleteEventArgs.cs
- FunctionImportMapping.cs
- MultiBindingExpression.cs
- XmlSortKey.cs
- URLBuilder.cs
- SettingsAttributeDictionary.cs
- ProfileManager.cs
- TextElement.cs
- oledbmetadatacolumnnames.cs
- SelectionProviderWrapper.cs
- XsltQilFactory.cs
- OverloadGroupAttribute.cs
- ProxyGenerator.cs
- StreamResourceInfo.cs
- RegisteredExpandoAttribute.cs
- HwndKeyboardInputProvider.cs
- LogRecordSequence.cs
- TraceLog.cs
- FontCollection.cs
- SqlRowUpdatedEvent.cs
- PageTextBox.cs
- DataGridCommandEventArgs.cs
- SelectionRangeConverter.cs
- Misc.cs
- KeyConstraint.cs
- ClientData.cs
- DockAndAnchorLayout.cs
- COAUTHIDENTITY.cs
- CqlQuery.cs
- QueryContinueDragEventArgs.cs
- ProgramNode.cs