Code:
/ DotNET / DotNET / 8.0 / untmp / Orcas / RTM / 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.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- GregorianCalendar.cs
- HandleCollector.cs
- DataControlImageButton.cs
- RoleManagerEventArgs.cs
- ValidateNames.cs
- XPathNodeInfoAtom.cs
- BuildManagerHost.cs
- XmlEntityReference.cs
- ValidationService.cs
- ParameterCollection.cs
- SecurityTokenAuthenticator.cs
- SchemaElementDecl.cs
- PolicyVersionConverter.cs
- ClientBuildManagerCallback.cs
- SingleAnimation.cs
- XmlBindingWorker.cs
- TrustManagerPromptUI.cs
- XmlSchemaImporter.cs
- Mappings.cs
- CollectionViewSource.cs
- EventDrivenDesigner.cs
- NavigationPropertyEmitter.cs
- ArrowControl.xaml.cs
- WindowsUserNameSecurityTokenAuthenticator.cs
- WebBrowserNavigatingEventHandler.cs
- SqlDataSourceEnumerator.cs
- _ScatterGatherBuffers.cs
- XmlSchemaSimpleContentRestriction.cs
- PartialTrustVisibleAssemblyCollection.cs
- WinFormsSecurity.cs
- CanonicalXml.cs
- UInt32.cs
- DataGridAddNewRow.cs
- DecimalAnimation.cs
- DropShadowBitmapEffect.cs
- ContainerUtilities.cs
- PointCollection.cs
- MimeWriter.cs
- TreeNodeStyleCollection.cs
- SqlConnection.cs
- ExternalFile.cs
- EpmSourcePathSegment.cs
- RpcCryptoRequest.cs
- XmlNodeChangedEventManager.cs
- ForceCopyBuildProvider.cs
- TraceEventCache.cs
- Switch.cs
- EditorPartCollection.cs
- SchemaTableOptionalColumn.cs
- Timer.cs
- QueryContinueDragEventArgs.cs
- ProtocolsConfigurationEntry.cs
- CorePropertiesFilter.cs
- DnsPermission.cs
- CqlLexer.cs
- TextContainerChangeEventArgs.cs
- ControlParameter.cs
- CssClassPropertyAttribute.cs
- Material.cs
- XmlCompatibilityReader.cs
- ISFTagAndGuidCache.cs
- SecurityTokenTypes.cs
- ISAPIWorkerRequest.cs
- RelatedCurrencyManager.cs
- Rectangle.cs
- StringSource.cs
- XmlSchemaInferenceException.cs
- TabControl.cs
- AnimationClockResource.cs
- ManagementException.cs
- LabelEditEvent.cs
- DrawingContextWalker.cs
- CacheSection.cs
- HandlerWithFactory.cs
- ProcessProtocolHandler.cs
- LinkLabel.cs
- FragmentQueryProcessor.cs
- StatusBarItem.cs
- HostElement.cs
- Size3DValueSerializer.cs
- NeutralResourcesLanguageAttribute.cs
- EntityReference.cs
- CopyOnWriteList.cs
- FontWeights.cs
- BooleanSwitch.cs
- AuthStoreRoleProvider.cs
- LocalValueEnumerator.cs
- OleDbEnumerator.cs
- MenuTracker.cs
- XamlInt32CollectionSerializer.cs
- DataGridViewImageCell.cs
- ToolStripSystemRenderer.cs
- NumberEdit.cs
- BitmapEffectGroup.cs
- DateTimePickerDesigner.cs
- UserInitiatedRoutedEventPermissionAttribute.cs
- recordstate.cs
- OdbcCommandBuilder.cs
- Panel.cs
- TcpDuplicateContext.cs