Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / xsp / System / Extensions / Configuration / ScriptingJsonSerializationSection.cs / 1305376 / ScriptingJsonSerializationSection.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.Configuration { using System; using System.Configuration; using System.Web; using System.Web.Configuration; using System.Web.Script.Serialization; 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
- CodeDomExtensionMethods.cs
- SqlUserDefinedTypeAttribute.cs
- TextServicesCompartmentContext.cs
- GroupItem.cs
- ConnectionStringEditor.cs
- OdbcConnectionStringbuilder.cs
- SignatureTargetIdManager.cs
- TextFormatterImp.cs
- SeekStoryboard.cs
- SemanticResultValue.cs
- contentDescriptor.cs
- XmlBinaryReader.cs
- PropertyMetadata.cs
- KeyedHashAlgorithm.cs
- GroupBox.cs
- DefaultDialogButtons.cs
- SQLDecimal.cs
- Opcode.cs
- Rotation3DAnimationUsingKeyFrames.cs
- UIElementHelper.cs
- DynamicDiscoveryDocument.cs
- XamlGridLengthSerializer.cs
- NativeWindow.cs
- MessageHeader.cs
- ApplicationFileParser.cs
- SplineKeyFrames.cs
- TypeBuilderInstantiation.cs
- RedirectionProxy.cs
- XamlPointCollectionSerializer.cs
- CodeDirectionExpression.cs
- ISAPIRuntime.cs
- WebServiceErrorEvent.cs
- NamespaceCollection.cs
- BamlRecords.cs
- CodePageUtils.cs
- PrintingPermission.cs
- MemoryFailPoint.cs
- SettingsProperty.cs
- OrderedDictionaryStateHelper.cs
- WindowsTreeView.cs
- TextEditorSelection.cs
- FixedLineResult.cs
- BitVector32.cs
- MatrixCamera.cs
- ReplyChannelAcceptor.cs
- _ShellExpression.cs
- CustomGrammar.cs
- IntMinMaxAggregationOperator.cs
- SiteMapDataSourceDesigner.cs
- TemplateBindingExpression.cs
- ContextMarshalException.cs
- TextAnchor.cs
- PropertyPath.cs
- SizeAnimationClockResource.cs
- MessageHeaderInfoTraceRecord.cs
- WmpBitmapDecoder.cs
- StreamGeometry.cs
- XNodeNavigator.cs
- StylusDevice.cs
- DuplicateWaitObjectException.cs
- XXXOnTypeBuilderInstantiation.cs
- SafeRightsManagementSessionHandle.cs
- ImmutablePropertyDescriptorGridEntry.cs
- XPathPatternBuilder.cs
- AttributeExtensions.cs
- SQLMoney.cs
- StringPropertyBuilder.cs
- NamespaceInfo.cs
- XNodeNavigator.cs
- ImageAttributes.cs
- Span.cs
- SoapDocumentMethodAttribute.cs
- TextEndOfParagraph.cs
- CustomTypeDescriptor.cs
- HtmlTitle.cs
- BuildProvidersCompiler.cs
- XmlSchemaInfo.cs
- UnmanagedMemoryAccessor.cs
- WebPartConnectionsConnectVerb.cs
- EventSinkHelperWriter.cs
- TargetConverter.cs
- HostExecutionContextManager.cs
- DataComponentMethodGenerator.cs
- WebPartEditorCancelVerb.cs
- SchemaImporterExtensionElement.cs
- ListSortDescriptionCollection.cs
- AssociationTypeEmitter.cs
- MissingMethodException.cs
- CharacterMetricsDictionary.cs
- IProvider.cs
- SyncOperationState.cs
- PageCatalogPart.cs
- ClientSponsor.cs
- GenericIdentity.cs
- SmtpFailedRecipientsException.cs
- Models.cs
- DefaultPropertyAttribute.cs
- ImportCatalogPart.cs
- SecurityTokenRequirement.cs
- EventProvider.cs