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
- ProviderMetadataCachedInformation.cs
- DrawingAttributeSerializer.cs
- Int16KeyFrameCollection.cs
- UInt16.cs
- BitArray.cs
- WebPartManagerInternals.cs
- TimerElapsedEvenArgs.cs
- RealProxy.cs
- FrugalMap.cs
- WebPartEditorCancelVerb.cs
- BooleanConverter.cs
- ObjectDataSourceSelectingEventArgs.cs
- CatalogZoneAutoFormat.cs
- XmlMtomWriter.cs
- XmlDataSource.cs
- SiteMapNodeCollection.cs
- DrawingVisualDrawingContext.cs
- HotCommands.cs
- DbExpressionVisitor.cs
- Compiler.cs
- OutputCacheSettings.cs
- MonikerBuilder.cs
- ColorTransform.cs
- XmlSchemaSimpleType.cs
- DBSqlParserColumn.cs
- ArgumentsParser.cs
- InheritedPropertyChangedEventArgs.cs
- InkPresenterAutomationPeer.cs
- ResourceIDHelper.cs
- XmlTextAttribute.cs
- ListSortDescriptionCollection.cs
- Gdiplus.cs
- UserControl.cs
- DataGridCaption.cs
- SqlCacheDependency.cs
- LoginName.cs
- SingleAnimationUsingKeyFrames.cs
- MemoryMappedFile.cs
- QilSortKey.cs
- DataGridViewRowsAddedEventArgs.cs
- OdbcConnectionHandle.cs
- ArgumentDesigner.xaml.cs
- WebPartExportVerb.cs
- UIElementAutomationPeer.cs
- HtmlHead.cs
- TextEffectCollection.cs
- CollectionViewGroupInternal.cs
- TypeValidationEventArgs.cs
- ModuleConfigurationInfo.cs
- XmlSchemaResource.cs
- Binding.cs
- AppSettingsReader.cs
- FocusChangedEventArgs.cs
- MimeBasePart.cs
- AccessorTable.cs
- EvidenceTypeDescriptor.cs
- TemplateInstanceAttribute.cs
- IOThreadTimer.cs
- XmlDomTextWriter.cs
- InputMethodStateChangeEventArgs.cs
- DbDataSourceEnumerator.cs
- SqlEnums.cs
- CollectionDataContract.cs
- UInt16Storage.cs
- StorageComplexTypeMapping.cs
- DockPanel.cs
- AssemblyCollection.cs
- TextCollapsingProperties.cs
- DataSourceControl.cs
- RenderData.cs
- TaskFactory.cs
- CodeAccessPermission.cs
- PerformanceCounterManager.cs
- HwndSourceKeyboardInputSite.cs
- List.cs
- MarkupExtensionReturnTypeAttribute.cs
- GradientStop.cs
- FreeIndexList.cs
- XmlSchemaImporter.cs
- _BasicClient.cs
- TableColumnCollectionInternal.cs
- GeneralTransform2DTo3D.cs
- DynamicRendererThreadManager.cs
- TemplateApplicationHelper.cs
- RadioButtonPopupAdapter.cs
- ObjectToken.cs
- IPGlobalProperties.cs
- NGCSerializer.cs
- RijndaelManaged.cs
- HttpApplicationFactory.cs
- UseLicense.cs
- CssTextWriter.cs
- CellPartitioner.cs
- Transform.cs
- IPGlobalProperties.cs
- TemplateNameScope.cs
- LinearGradientBrush.cs
- UnitySerializationHolder.cs
- WebRequestModuleElement.cs
- EventlogProvider.cs