Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / Orcas / QFE / 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
- ToolStripOverflow.cs
- BaseHashHelper.cs
- StrokeFIndices.cs
- PerformanceCounterPermissionAttribute.cs
- PrePrepareMethodAttribute.cs
- AsyncPostBackTrigger.cs
- PropertyChangedEventManager.cs
- BaseCollection.cs
- FileDialog_Vista_Interop.cs
- DoubleAnimationClockResource.cs
- SafeFileMappingHandle.cs
- XmlSchemaChoice.cs
- InvocationExpression.cs
- RegexInterpreter.cs
- localization.cs
- MsmqBindingElementBase.cs
- XmlLanguage.cs
- WorkflowInvoker.cs
- AggregateNode.cs
- WsdlExporter.cs
- Guid.cs
- SharedStatics.cs
- BrowserCapabilitiesCompiler.cs
- RMEnrollmentPage3.cs
- ToolStripPanel.cs
- Utils.cs
- AssemblyName.cs
- PrinterResolution.cs
- WebPartCancelEventArgs.cs
- XmlTypeMapping.cs
- validationstate.cs
- Buffer.cs
- sqlinternaltransaction.cs
- TypeDescriptionProvider.cs
- QueryComponents.cs
- XpsS0ValidatingLoader.cs
- Point3DCollection.cs
- ClientBuildManagerCallback.cs
- _CacheStreams.cs
- mediaclock.cs
- TypeNameHelper.cs
- Sequence.cs
- ContactManager.cs
- WebConfigurationHostFileChange.cs
- SqlDataSourceCommandEventArgs.cs
- CodeAttachEventStatement.cs
- CollectionExtensions.cs
- FileDetails.cs
- OperationResponse.cs
- EDesignUtil.cs
- ScrollPattern.cs
- LinearKeyFrames.cs
- UnescapedXmlDiagnosticData.cs
- CodeGeneratorOptions.cs
- nulltextnavigator.cs
- MonthCalendar.cs
- OperandQuery.cs
- UIPermission.cs
- ThreadAbortException.cs
- SqlCacheDependency.cs
- ListBox.cs
- ToReply.cs
- DataTableReaderListener.cs
- StringResourceManager.cs
- AccessText.cs
- OrderedDictionary.cs
- PeerApplicationLaunchInfo.cs
- SamlSerializer.cs
- ProxyFragment.cs
- NgenServicingAttributes.cs
- RectAnimationUsingKeyFrames.cs
- RuntimeConfigLKG.cs
- ElementHostAutomationPeer.cs
- CachingHintValidation.cs
- TrackBar.cs
- MenuItem.cs
- TempFiles.cs
- VectorValueSerializer.cs
- AudioStateChangedEventArgs.cs
- BoundField.cs
- SchemaInfo.cs
- CoordinationService.cs
- MarginCollapsingState.cs
- TextLineBreak.cs
- RecordConverter.cs
- Point3DIndependentAnimationStorage.cs
- ScrollEvent.cs
- Misc.cs
- DockProviderWrapper.cs
- TypeLibConverter.cs
- GlyphRunDrawing.cs
- SqlTypesSchemaImporter.cs
- TraceSection.cs
- JapaneseLunisolarCalendar.cs
- LogSwitch.cs
- IndexObject.cs
- ping.cs
- NullableConverter.cs
- MergeFilterQuery.cs
- SystemIPv6InterfaceProperties.cs