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
- DefaultTraceListener.cs
- LinqDataSourceView.cs
- DataGridViewLayoutData.cs
- DragEventArgs.cs
- StatusBarPanelClickEvent.cs
- MonthCalendar.cs
- RequestTimeoutManager.cs
- XmlAnyElementAttribute.cs
- ButtonBase.cs
- Color.cs
- PanelContainerDesigner.cs
- ResetableIterator.cs
- StateItem.cs
- GuidelineCollection.cs
- LOSFormatter.cs
- Win32Interop.cs
- WebServiceEnumData.cs
- RichTextBox.cs
- WhitespaceRuleReader.cs
- ListViewGroup.cs
- WorkflowItemPresenter.cs
- RowParagraph.cs
- Match.cs
- Content.cs
- AppPool.cs
- DictionaryEntry.cs
- SessionEndedEventArgs.cs
- TextWriterEngine.cs
- ScriptMethodAttribute.cs
- InstanceContext.cs
- SpStreamWrapper.cs
- PersianCalendar.cs
- ListBoxItem.cs
- LinkUtilities.cs
- OrthographicCamera.cs
- RegexMatchCollection.cs
- WindowsRegion.cs
- TypeGeneratedEventArgs.cs
- TextLineBreak.cs
- Pkcs7Signer.cs
- WhereQueryOperator.cs
- NamespaceInfo.cs
- ItemAutomationPeer.cs
- CultureInfoConverter.cs
- TextTabProperties.cs
- QueryOptionExpression.cs
- ManagedFilter.cs
- ParserExtension.cs
- TemplateBuilder.cs
- DuplicateDetector.cs
- StreamInfo.cs
- PseudoWebRequest.cs
- StorageComplexPropertyMapping.cs
- OwnerDrawPropertyBag.cs
- RuntimeEnvironment.cs
- SystemIcmpV6Statistics.cs
- FaultContractInfo.cs
- HeaderedContentControl.cs
- RtfNavigator.cs
- LookupBindingPropertiesAttribute.cs
- SetIterators.cs
- AsnEncodedData.cs
- NetworkCredential.cs
- TypeDescriptionProvider.cs
- Part.cs
- MeshGeometry3D.cs
- MediaElement.cs
- BitmapEffectDrawingContextWalker.cs
- TreeViewAutomationPeer.cs
- XmlDataImplementation.cs
- IgnoreSection.cs
- LogLogRecord.cs
- Control.cs
- ToolbarAUtomationPeer.cs
- ExceptionUtility.cs
- FileSystemWatcher.cs
- TypeElementCollection.cs
- mongolianshape.cs
- Property.cs
- MSAANativeProvider.cs
- Overlapped.cs
- Rotation3DKeyFrameCollection.cs
- EnumMember.cs
- ToggleProviderWrapper.cs
- DirectoryInfo.cs
- SoapFault.cs
- cookie.cs
- QuaternionRotation3D.cs
- Collection.cs
- ComponentChangingEvent.cs
- VerificationException.cs
- DataSourceHelper.cs
- InternalException.cs
- SqlColumnizer.cs
- Serializer.cs
- ApplicationHost.cs
- DataContractSerializerOperationGenerator.cs
- DataGridRelationshipRow.cs
- ToolStripItemRenderEventArgs.cs
- XPathBinder.cs