Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / Orcas / SP / 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
- Debug.cs
- __ComObject.cs
- XmlDictionary.cs
- EditingScopeUndoUnit.cs
- DummyDataSource.cs
- JournalEntry.cs
- StatusBarItemAutomationPeer.cs
- FormattedTextSymbols.cs
- IDictionary.cs
- OracleConnectionString.cs
- ArgumentsParser.cs
- SpecularMaterial.cs
- EntityChangedParams.cs
- MaskedTextProvider.cs
- ListBindingConverter.cs
- UIElement3D.cs
- DataPagerFieldItem.cs
- CategoryAttribute.cs
- Route.cs
- DateTimePicker.cs
- XslCompiledTransform.cs
- DataGridComponentEditor.cs
- SystemParameters.cs
- ButtonRenderer.cs
- KeyFrames.cs
- TextElementEnumerator.cs
- PropertyTabAttribute.cs
- Operand.cs
- Deserializer.cs
- FrameAutomationPeer.cs
- ToolBarOverflowPanel.cs
- MimePart.cs
- BooleanFunctions.cs
- IIS7WorkerRequest.cs
- HostExecutionContextManager.cs
- NavigationPropertyEmitter.cs
- EntityExpressionVisitor.cs
- ItemType.cs
- AnimationClockResource.cs
- ClientReliableChannelBinder.cs
- SecurityPermission.cs
- ViewStateException.cs
- MarkupExtensionSerializer.cs
- SelectorAutomationPeer.cs
- XmlNodeChangedEventArgs.cs
- CodePropertyReferenceExpression.cs
- SqlFunctionAttribute.cs
- SystemIPInterfaceStatistics.cs
- CodeAttributeDeclarationCollection.cs
- LinqDataSourceDisposeEventArgs.cs
- LOSFormatter.cs
- LinqDataSourceUpdateEventArgs.cs
- RecordBuilder.cs
- PartialTrustVisibleAssemblyCollection.cs
- TreeViewImageGenerator.cs
- HttpClientCertificate.cs
- SortAction.cs
- TypeUtil.cs
- Byte.cs
- PointConverter.cs
- _IPv4Address.cs
- EventQueueState.cs
- DBConnection.cs
- WindowsUpDown.cs
- DataSourceSerializationException.cs
- TableLayoutCellPaintEventArgs.cs
- SqlProviderManifest.cs
- Funcletizer.cs
- SecondaryIndex.cs
- RowSpanVector.cs
- ClientScriptManagerWrapper.cs
- DependencyStoreSurrogate.cs
- AutoSizeToolBoxItem.cs
- AttributeSetAction.cs
- WeakHashtable.cs
- ListViewDataItem.cs
- TextContainerHelper.cs
- EtwTrace.cs
- ListParagraph.cs
- DynamicAttribute.cs
- WebPartConnectionCollection.cs
- XmlSchemaSimpleTypeList.cs
- ControlCollection.cs
- MonitorWrapper.cs
- TemplateApplicationHelper.cs
- TraceSwitch.cs
- xsdvalidator.cs
- _BaseOverlappedAsyncResult.cs
- Mutex.cs
- DBCommandBuilder.cs
- QilName.cs
- HMACMD5.cs
- RectKeyFrameCollection.cs
- EpmCustomContentSerializer.cs
- DataGridHelper.cs
- UnsafePeerToPeerMethods.cs
- RootCodeDomSerializer.cs
- DocumentViewerHelper.cs
- ObjectStorage.cs
- EntitySqlQueryState.cs