Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / Orcas / NetFXw7 / 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
- Helpers.cs
- DataGridViewElement.cs
- StylusSystemGestureEventArgs.cs
- CodeIndexerExpression.cs
- SweepDirectionValidation.cs
- HttpResponseWrapper.cs
- NumberSubstitution.cs
- CutCopyPasteHelper.cs
- WindowsSpinner.cs
- NativeWindow.cs
- SchemaType.cs
- BinaryUtilClasses.cs
- HtmlControl.cs
- EntityStoreSchemaFilterEntry.cs
- DependencyObjectCodeDomSerializer.cs
- NonSerializedAttribute.cs
- PropertyRef.cs
- WebBrowserBase.cs
- ProxyElement.cs
- GlyphRun.cs
- MulticastNotSupportedException.cs
- CroppedBitmap.cs
- ToolStripEditorManager.cs
- StringFormat.cs
- DecoderExceptionFallback.cs
- BitmapEffectvisualstate.cs
- OdbcDataAdapter.cs
- ContentTextAutomationPeer.cs
- MyContact.cs
- Point3DCollectionConverter.cs
- XmlWhitespace.cs
- HMACSHA512.cs
- DesignerValidatorAdapter.cs
- DataShape.cs
- WriterOutput.cs
- RegistrySecurity.cs
- SchemaCollectionPreprocessor.cs
- MultiTouchSystemGestureLogic.cs
- MULTI_QI.cs
- OpCodes.cs
- QueryPageSettingsEventArgs.cs
- assemblycache.cs
- OdbcTransaction.cs
- XamlReaderHelper.cs
- OpenFileDialog.cs
- FlowNode.cs
- counter.cs
- AttachedPropertyMethodSelector.cs
- CompositeScriptReference.cs
- EntitySetBase.cs
- WebBrowsableAttribute.cs
- SapiAttributeParser.cs
- UseLicense.cs
- ProvideValueServiceProvider.cs
- XPathExpr.cs
- HtmlInputImage.cs
- ScaleTransform3D.cs
- FontWeights.cs
- Configuration.cs
- FileVersionInfo.cs
- CompositionAdorner.cs
- HttpPostClientProtocol.cs
- CodeMemberProperty.cs
- X509DefaultServiceCertificateElement.cs
- ExtenderProviderService.cs
- AlternateView.cs
- PassportAuthenticationModule.cs
- ResXResourceSet.cs
- GenericRootAutomationPeer.cs
- StylusButtonEventArgs.cs
- WindowsStatusBar.cs
- SelectionList.cs
- TypedElement.cs
- PolyBezierSegment.cs
- ProfilePropertyMetadata.cs
- ButtonColumn.cs
- CodeMemberMethod.cs
- SuppressMessageAttribute.cs
- PersonalizationEntry.cs
- DaylightTime.cs
- WsatServiceCertificate.cs
- ModulesEntry.cs
- SecurityTokenValidationException.cs
- PropertyPushdownHelper.cs
- ShaderRenderModeValidation.cs
- DefaultBinder.cs
- NonParentingControl.cs
- IconHelper.cs
- DoubleAnimationClockResource.cs
- Geometry.cs
- dbenumerator.cs
- WindowsListViewGroupSubsetLink.cs
- SelectionProviderWrapper.cs
- CurrentTimeZone.cs
- TypeDelegator.cs
- MarkupCompilePass2.cs
- ExpressionParser.cs
- KeyValuePairs.cs
- WebServiceMethodData.cs
- ButtonStandardAdapter.cs