Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / Services / Web / System / Web / Services / Protocols / UrlEncodedParameterWriter.cs / 1305376 / UrlEncodedParameterWriter.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.Services.Protocols { using System.IO; using System; using System.Text; using System.Xml.Serialization; using System.Reflection; using System.Collections; using System.Web.Services; ////// /// public abstract class UrlEncodedParameterWriter : MimeParameterWriter { ParameterInfo[] paramInfos; int numberEncoded; Encoding encoding; ///[To be supplied.] ///public override Encoding RequestEncoding { get { return encoding; } set { encoding = value; } } /// /// /// public override object GetInitializer(LogicalMethodInfo methodInfo) { if (!ValueCollectionParameterReader.IsSupported(methodInfo)) return null; return methodInfo.InParameters; } ///[To be supplied.] ////// /// public override void Initialize(object initializer) { this.paramInfos = (ParameterInfo[])initializer; } ///[To be supplied.] ////// /// protected void Encode(TextWriter writer, object[] values) { numberEncoded = 0; for (int i = 0; i < paramInfos.Length; i++) { ParameterInfo paramInfo = paramInfos[i]; if (paramInfo.ParameterType.IsArray) { Array array = (Array)values[i]; for (int j = 0; j < array.Length; j++) { Encode(writer, paramInfo.Name, array.GetValue(j)); } } else { Encode(writer, paramInfo.Name, values[i]); } } } ///[To be supplied.] ///protected void Encode(TextWriter writer, string name, object value) { if (numberEncoded > 0) writer.Write('&'); writer.Write(UrlEncode(name)); writer.Write('='); writer.Write(UrlEncode(ScalarFormatter.ToString(value))); numberEncoded++; } string UrlEncode(string value) { if (encoding != null) return UrlEncoder.UrlEscapeString(value, encoding); else return UrlEncoder.UrlEscapeStringUnicode(value); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ // // Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.Services.Protocols { using System.IO; using System; using System.Text; using System.Xml.Serialization; using System.Reflection; using System.Collections; using System.Web.Services; ////// /// public abstract class UrlEncodedParameterWriter : MimeParameterWriter { ParameterInfo[] paramInfos; int numberEncoded; Encoding encoding; ///[To be supplied.] ///public override Encoding RequestEncoding { get { return encoding; } set { encoding = value; } } /// /// /// public override object GetInitializer(LogicalMethodInfo methodInfo) { if (!ValueCollectionParameterReader.IsSupported(methodInfo)) return null; return methodInfo.InParameters; } ///[To be supplied.] ////// /// public override void Initialize(object initializer) { this.paramInfos = (ParameterInfo[])initializer; } ///[To be supplied.] ////// /// protected void Encode(TextWriter writer, object[] values) { numberEncoded = 0; for (int i = 0; i < paramInfos.Length; i++) { ParameterInfo paramInfo = paramInfos[i]; if (paramInfo.ParameterType.IsArray) { Array array = (Array)values[i]; for (int j = 0; j < array.Length; j++) { Encode(writer, paramInfo.Name, array.GetValue(j)); } } else { Encode(writer, paramInfo.Name, values[i]); } } } ///[To be supplied.] ///protected void Encode(TextWriter writer, string name, object value) { if (numberEncoded > 0) writer.Write('&'); writer.Write(UrlEncode(name)); writer.Write('='); writer.Write(UrlEncode(ScalarFormatter.ToString(value))); numberEncoded++; } string UrlEncode(string value) { if (encoding != null) return UrlEncoder.UrlEscapeString(value, encoding); else return UrlEncoder.UrlEscapeStringUnicode(value); } } } // 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
- InputEventArgs.cs
- PanelDesigner.cs
- SqlDataSourceCommandEventArgs.cs
- CompilationLock.cs
- Viewport3DAutomationPeer.cs
- ColumnClickEvent.cs
- SpeechSeg.cs
- ComponentRenameEvent.cs
- CorrelationToken.cs
- Automation.cs
- ScriptingAuthenticationServiceSection.cs
- TraceLevelStore.cs
- RegisteredDisposeScript.cs
- AppliedDeviceFiltersEditor.cs
- CompilationUtil.cs
- AnonymousIdentificationSection.cs
- MemberMaps.cs
- StringCollectionEditor.cs
- DbProviderFactoriesConfigurationHandler.cs
- PriorityBinding.cs
- EvidenceBase.cs
- AssemblyBuilder.cs
- TreeViewImageGenerator.cs
- MutexSecurity.cs
- RowToFieldTransformer.cs
- WebColorConverter.cs
- ProfileService.cs
- List.cs
- DLinqColumnProvider.cs
- HtmlButton.cs
- FileUtil.cs
- ProxyAttribute.cs
- TableLayoutPanelCodeDomSerializer.cs
- PositiveTimeSpanValidatorAttribute.cs
- CompilationUnit.cs
- HttpWebRequestElement.cs
- UnaryQueryOperator.cs
- ComplusEndpointConfigContainer.cs
- UriScheme.cs
- RepeaterItem.cs
- NumberFormatInfo.cs
- NullableBoolConverter.cs
- StrongNameMembershipCondition.cs
- MLangCodePageEncoding.cs
- KeyInterop.cs
- WebZone.cs
- SQLByte.cs
- TypeRefElement.cs
- Bezier.cs
- XPathDocumentIterator.cs
- GridViewSortEventArgs.cs
- TextBoxBase.cs
- ToolStripRenderEventArgs.cs
- UserInitiatedRoutedEventPermissionAttribute.cs
- PerspectiveCamera.cs
- Dump.cs
- DoubleLinkListEnumerator.cs
- SectionInformation.cs
- ConfigUtil.cs
- BaseInfoTable.cs
- FixedTextSelectionProcessor.cs
- WarningException.cs
- precedingsibling.cs
- ButtonAutomationPeer.cs
- ServiceDescriptionSerializer.cs
- WindowsSpinner.cs
- SqlGatherConsumedAliases.cs
- PropertyGridCommands.cs
- OdbcInfoMessageEvent.cs
- TransactionContext.cs
- TextStore.cs
- HMACSHA384.cs
- AdornerLayer.cs
- CreateUserErrorEventArgs.cs
- XmlDocument.cs
- HtmlInputImage.cs
- AutomationProperties.cs
- DebugView.cs
- ReadOnlyNameValueCollection.cs
- QilInvoke.cs
- GridViewEditEventArgs.cs
- BindToObject.cs
- StringUtil.cs
- SqlFlattener.cs
- DbConnectionPoolOptions.cs
- TextElementAutomationPeer.cs
- LingerOption.cs
- WebPartsPersonalizationAuthorization.cs
- EntryWrittenEventArgs.cs
- MsmqReceiveHelper.cs
- HttpListenerRequest.cs
- Misc.cs
- HttpWrapper.cs
- RadioButton.cs
- CompensationToken.cs
- RadialGradientBrush.cs
- CollectionBase.cs
- HasCopySemanticsAttribute.cs
- ScriptManagerProxy.cs
- QueryableFilterUserControl.cs