Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / Orcas / QFE / 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
- InstanceData.cs
- TemplateEditingFrame.cs
- XXXOnTypeBuilderInstantiation.cs
- XslAstAnalyzer.cs
- ComponentResourceManager.cs
- CurrentChangedEventManager.cs
- Keywords.cs
- ZipIOEndOfCentralDirectoryBlock.cs
- RootNamespaceAttribute.cs
- SchemaNames.cs
- RemotingConfigParser.cs
- MetadataCache.cs
- ComponentConverter.cs
- SamlAssertionKeyIdentifierClause.cs
- Debug.cs
- InstanceLockException.cs
- Invariant.cs
- AdditionalEntityFunctions.cs
- BulletChrome.cs
- TargetConverter.cs
- ValidateNames.cs
- SqlXmlStorage.cs
- GlobalizationAssembly.cs
- StylusDevice.cs
- PartManifestEntry.cs
- ButtonChrome.cs
- XmlElementAttribute.cs
- GiveFeedbackEventArgs.cs
- DataTable.cs
- NominalTypeEliminator.cs
- ContentPlaceHolder.cs
- Pens.cs
- RoleManagerModule.cs
- ContentPlaceHolder.cs
- SharedStatics.cs
- ValidatorCollection.cs
- XmlSchemaValidationException.cs
- SqlDataSourceFilteringEventArgs.cs
- BorderSidesEditor.cs
- DefaultObjectMappingItemCollection.cs
- ImageDrawing.cs
- ListItemCollection.cs
- SymbolEqualComparer.cs
- EntityClientCacheKey.cs
- TextEditorCopyPaste.cs
- GridViewRow.cs
- Panel.cs
- ActivityInstanceMap.cs
- XXXInfos.cs
- ValueUtilsSmi.cs
- DLinqTableProvider.cs
- DataGridViewComboBoxColumn.cs
- ColorContextHelper.cs
- XmlSchemaDocumentation.cs
- WebSysDescriptionAttribute.cs
- XmlStringTable.cs
- ServiceSettingsResponseInfo.cs
- SqlGatherProducedAliases.cs
- RegexCompilationInfo.cs
- MatrixAnimationUsingPath.cs
- Condition.cs
- OleDbParameterCollection.cs
- Registry.cs
- DuplexChannel.cs
- MobileListItem.cs
- CannotUnloadAppDomainException.cs
- AutomationPatternInfo.cs
- IndexedString.cs
- PrintDialog.cs
- Point4D.cs
- CodeParameterDeclarationExpressionCollection.cs
- ChtmlCommandAdapter.cs
- FixedHyperLink.cs
- GradientBrush.cs
- AttributeUsageAttribute.cs
- CryptoApi.cs
- ExtendLockAsyncResult.cs
- RelationshipFixer.cs
- ConnectionPoint.cs
- SafeSystemMetrics.cs
- DesignerTextWriter.cs
- MatrixValueSerializer.cs
- Expressions.cs
- BinaryFormatter.cs
- ToggleButton.cs
- CodeCompileUnit.cs
- TemplateBamlTreeBuilder.cs
- CommonDialog.cs
- AcceleratedTokenProviderState.cs
- ByteAnimation.cs
- PropertyGridView.cs
- TokenBasedSet.cs
- BaseCodePageEncoding.cs
- XmlSchemaNotation.cs
- X509CertificateTrustedIssuerElementCollection.cs
- MimeTypeAttribute.cs
- XmlSignificantWhitespace.cs
- ProvidersHelper.cs
- ImageFormat.cs
- PenThreadPool.cs