Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / Orcas / NetFXw7 / ndp / fx / src / xsp / System / Web / Extensions / Configuration / ScriptingJsonSerializationSection.cs / 1 / ScriptingJsonSerializationSection.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.Configuration { using System; using System.Configuration; using System.Security.Permissions; using System.Web; using System.Web.Configuration; using System.Web.Script.Serialization; [AspNetHostingPermission(SecurityAction.LinkDemand, Level = AspNetHostingPermissionLevel.Minimal)] public sealed class ScriptingJsonSerializationSection : ConfigurationSection { private static readonly ConfigurationProperty _propConverters = new ConfigurationProperty("converters", typeof(ConvertersCollection), null, ConfigurationPropertyOptions.IsDefaultCollection); private static readonly ConfigurationProperty _propRecursionLimitLimit = new ConfigurationProperty("recursionLimit", typeof(int), 100, null, new IntegerValidator(1, int.MaxValue), ConfigurationPropertyOptions.None); private static readonly ConfigurationProperty _propMaxJsonLength = new ConfigurationProperty("maxJsonLength", typeof(int), 102400, null, new IntegerValidator(1, int.MaxValue), ConfigurationPropertyOptions.None); private static ConfigurationPropertyCollection _properties = BuildProperties(); private static ConfigurationPropertyCollection BuildProperties() { ConfigurationPropertyCollection props = new ConfigurationPropertyCollection(); props.Add(_propConverters); props.Add(_propRecursionLimitLimit); props.Add(_propMaxJsonLength); return props; } protected override ConfigurationPropertyCollection Properties { get { return _properties; } } [ConfigurationProperty("converters", IsKey = true, DefaultValue = "")] public ConvertersCollection Converters { get { return (ConvertersCollection)base[_propConverters]; } } [ConfigurationProperty("recursionLimit", DefaultValue = 100)] public int RecursionLimit { get { return (int)base[_propRecursionLimitLimit]; } set { base[_propRecursionLimitLimit] = value; } } [ConfigurationProperty("maxJsonLength", DefaultValue = 102400)] public int MaxJsonLength { get { return (int)base[_propMaxJsonLength]; } set { base[_propMaxJsonLength] = value; } } internal class ApplicationSettings { private int _recusionLimit; private int _maxJsonLimit; private JavaScriptConverter[] _converters; internal ApplicationSettings() { #pragma warning disable 0436 ScriptingJsonSerializationSection section = (ScriptingJsonSerializationSection) WebConfigurationManager.GetSection("system.web.extensions/scripting/webServices/jsonSerialization"); #pragma warning restore 0436 if (section != null) { _recusionLimit = section.RecursionLimit; _maxJsonLimit = section.MaxJsonLength; _converters = section.Converters.CreateConverters(); } else { _recusionLimit = (int)_propRecursionLimitLimit.DefaultValue; _maxJsonLimit = (int)_propMaxJsonLength.DefaultValue; _converters = new JavaScriptConverter[0]; } } internal int RecursionLimit { get { return _recusionLimit; } } internal int MaxJsonLimit { get { return _maxJsonLimit; } } internal JavaScriptConverter[] Converters { get { return _converters; } } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.Configuration { using System; using System.Configuration; using System.Security.Permissions; using System.Web; using System.Web.Configuration; using System.Web.Script.Serialization; [AspNetHostingPermission(SecurityAction.LinkDemand, Level = AspNetHostingPermissionLevel.Minimal)] public sealed class ScriptingJsonSerializationSection : ConfigurationSection { private static readonly ConfigurationProperty _propConverters = new ConfigurationProperty("converters", typeof(ConvertersCollection), null, ConfigurationPropertyOptions.IsDefaultCollection); private static readonly ConfigurationProperty _propRecursionLimitLimit = new ConfigurationProperty("recursionLimit", typeof(int), 100, null, new IntegerValidator(1, int.MaxValue), ConfigurationPropertyOptions.None); private static readonly ConfigurationProperty _propMaxJsonLength = new ConfigurationProperty("maxJsonLength", typeof(int), 102400, null, new IntegerValidator(1, int.MaxValue), ConfigurationPropertyOptions.None); private static ConfigurationPropertyCollection _properties = BuildProperties(); private static ConfigurationPropertyCollection BuildProperties() { ConfigurationPropertyCollection props = new ConfigurationPropertyCollection(); props.Add(_propConverters); props.Add(_propRecursionLimitLimit); props.Add(_propMaxJsonLength); return props; } protected override ConfigurationPropertyCollection Properties { get { return _properties; } } [ConfigurationProperty("converters", IsKey = true, DefaultValue = "")] public ConvertersCollection Converters { get { return (ConvertersCollection)base[_propConverters]; } } [ConfigurationProperty("recursionLimit", DefaultValue = 100)] public int RecursionLimit { get { return (int)base[_propRecursionLimitLimit]; } set { base[_propRecursionLimitLimit] = value; } } [ConfigurationProperty("maxJsonLength", DefaultValue = 102400)] public int MaxJsonLength { get { return (int)base[_propMaxJsonLength]; } set { base[_propMaxJsonLength] = value; } } internal class ApplicationSettings { private int _recusionLimit; private int _maxJsonLimit; private JavaScriptConverter[] _converters; internal ApplicationSettings() { #pragma warning disable 0436 ScriptingJsonSerializationSection section = (ScriptingJsonSerializationSection) WebConfigurationManager.GetSection("system.web.extensions/scripting/webServices/jsonSerialization"); #pragma warning restore 0436 if (section != null) { _recusionLimit = section.RecursionLimit; _maxJsonLimit = section.MaxJsonLength; _converters = section.Converters.CreateConverters(); } else { _recusionLimit = (int)_propRecursionLimitLimit.DefaultValue; _maxJsonLimit = (int)_propMaxJsonLength.DefaultValue; _converters = new JavaScriptConverter[0]; } } internal int RecursionLimit { get { return _recusionLimit; } } internal int MaxJsonLimit { get { return _maxJsonLimit; } } internal JavaScriptConverter[] Converters { get { return _converters; } } } } } // 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
- JoinSymbol.cs
- ZipIOCentralDirectoryBlock.cs
- _ServiceNameStore.cs
- mda.cs
- UIElementAutomationPeer.cs
- Scene3D.cs
- AlphaSortedEnumConverter.cs
- CommonGetThemePartSize.cs
- BamlReader.cs
- CanonicalXml.cs
- WindowsListViewItem.cs
- ReflectPropertyDescriptor.cs
- KnownIds.cs
- PreviewControlDesigner.cs
- CompleteWizardStep.cs
- XsltOutput.cs
- DataBindingCollection.cs
- XmlAutoDetectWriter.cs
- ReflectPropertyDescriptor.cs
- ErrorTableItemStyle.cs
- ModulesEntry.cs
- SignatureHelper.cs
- SourceCollection.cs
- EditorPartChrome.cs
- IDReferencePropertyAttribute.cs
- CachedBitmap.cs
- PeerResolverMode.cs
- Font.cs
- path.cs
- DecimalStorage.cs
- PartialCachingAttribute.cs
- ObjectResult.cs
- XsltFunctions.cs
- Query.cs
- MissingFieldException.cs
- CollectionView.cs
- EventHandlers.cs
- SspiSecurityToken.cs
- CalendarDay.cs
- Invariant.cs
- ConfigurationStrings.cs
- CodeEntryPointMethod.cs
- SessionEndingEventArgs.cs
- BookmarkWorkItem.cs
- TraceSwitch.cs
- SoapEnumAttribute.cs
- Msec.cs
- PathFigure.cs
- AlternateViewCollection.cs
- QueryComponents.cs
- versioninfo.cs
- RIPEMD160.cs
- Configuration.cs
- TypeLibConverter.cs
- CriticalHandle.cs
- TypePresenter.xaml.cs
- AttributeCollection.cs
- CustomAttribute.cs
- PropertyConverter.cs
- SafeViewOfFileHandle.cs
- Style.cs
- EndpointDispatcherTable.cs
- Grid.cs
- QuotedPrintableStream.cs
- LeftCellWrapper.cs
- TextRangeBase.cs
- MemberHolder.cs
- DataListItemEventArgs.cs
- AnimatedTypeHelpers.cs
- DefaultParameterValueAttribute.cs
- log.cs
- WebRequestModulesSection.cs
- RegistrySecurity.cs
- DebuggerService.cs
- _NativeSSPI.cs
- HighContrastHelper.cs
- CollectionTypeElement.cs
- TimerElapsedEvenArgs.cs
- TypefaceMap.cs
- ContractTypeNameCollection.cs
- MenuAdapter.cs
- ValueConversionAttribute.cs
- Activity.cs
- FirstMatchCodeGroup.cs
- SqlRewriteScalarSubqueries.cs
- DiscriminatorMap.cs
- CollectionView.cs
- DynamicMetaObjectBinder.cs
- NonParentingControl.cs
- GenericTextProperties.cs
- SourceFileBuildProvider.cs
- EmptyElement.cs
- IndentedTextWriter.cs
- DataViewSettingCollection.cs
- StructuredTypeEmitter.cs
- HtmlInputFile.cs
- EDesignUtil.cs
- PriorityChain.cs
- TransferRequestHandler.cs
- TreeViewHitTestInfo.cs