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
- MruCache.cs
- SyndicationFeed.cs
- UserPersonalizationStateInfo.cs
- RelationshipEndCollection.cs
- OdbcParameterCollection.cs
- SpeakInfo.cs
- ArgIterator.cs
- QilGeneratorEnv.cs
- WsrmMessageInfo.cs
- XmlLangPropertyAttribute.cs
- MethodAccessException.cs
- TrustManager.cs
- FixedTextContainer.cs
- ToolTip.cs
- SiteMap.cs
- ErrorEventArgs.cs
- MulticastNotSupportedException.cs
- UpdateRecord.cs
- WpfKnownType.cs
- VerticalAlignConverter.cs
- MailAddress.cs
- Calendar.cs
- SafeFileHandle.cs
- OdbcStatementHandle.cs
- IfAction.cs
- AsymmetricAlgorithm.cs
- SimpleHandlerBuildProvider.cs
- XhtmlBasicPhoneCallAdapter.cs
- TemplateControlCodeDomTreeGenerator.cs
- DetailsView.cs
- ZipFileInfoCollection.cs
- NotEqual.cs
- FieldInfo.cs
- DebuggerAttributes.cs
- DbParameterHelper.cs
- ConfigurationPropertyAttribute.cs
- OpenTypeLayoutCache.cs
- WorkflowHostingResponseContext.cs
- MailWriter.cs
- DesignerDataColumn.cs
- SparseMemoryStream.cs
- Debug.cs
- MenuAutomationPeer.cs
- RuntimeConfigLKG.cs
- BorderGapMaskConverter.cs
- AnalyzedTree.cs
- WebPageTraceListener.cs
- selecteditemcollection.cs
- cookie.cs
- InProcStateClientManager.cs
- NotFiniteNumberException.cs
- JapaneseCalendar.cs
- ViewCellRelation.cs
- GenericTypeParameterBuilder.cs
- LinqDataSourceContextData.cs
- WindowInteropHelper.cs
- XPathException.cs
- StateMachineHelpers.cs
- ZipIOModeEnforcingStream.cs
- SelectionItemPattern.cs
- FeatureSupport.cs
- mongolianshape.cs
- ResourceProviderFactory.cs
- SystemResourceKey.cs
- MultiSelectRootGridEntry.cs
- ViewManager.cs
- CodeMemberField.cs
- HttpFileCollection.cs
- RequestSecurityTokenResponse.cs
- Int32Rect.cs
- CodeArrayCreateExpression.cs
- Renderer.cs
- HtmlTernaryTree.cs
- LiteralDesigner.cs
- SystemGatewayIPAddressInformation.cs
- CRYPTPROTECT_PROMPTSTRUCT.cs
- QuaternionKeyFrameCollection.cs
- ValidationEventArgs.cs
- LookupNode.cs
- HtmlElementEventArgs.cs
- SafeTimerHandle.cs
- BuildProviderUtils.cs
- PTProvider.cs
- HierarchicalDataBoundControl.cs
- PageSettings.cs
- Configuration.cs
- WindowsUpDown.cs
- EnumUnknown.cs
- LogFlushAsyncResult.cs
- CodeParameterDeclarationExpressionCollection.cs
- XmlCollation.cs
- ContextMenuStripActionList.cs
- Compiler.cs
- XmlDocumentFragment.cs
- SchemaObjectWriter.cs
- CompiledQueryCacheEntry.cs
- TemplateBindingExtensionConverter.cs
- RewritingPass.cs
- PublisherIdentityPermission.cs
- ContentTextAutomationPeer.cs