Code:
/ 4.0 / 4.0 / untmp / 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.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- Transform3DCollection.cs
- AttributeEmitter.cs
- FileDetails.cs
- BookmarkEventArgs.cs
- ACL.cs
- HttpCookieCollection.cs
- CancelRequestedQuery.cs
- ProviderCommandInfoUtils.cs
- Binding.cs
- DeviceSpecificChoice.cs
- Nullable.cs
- ConstraintConverter.cs
- CodeNamespaceImport.cs
- cookieexception.cs
- IsolatedStorageFileStream.cs
- precedingsibling.cs
- SingleQueryOperator.cs
- XmlArrayItemAttribute.cs
- DataError.cs
- DocobjHost.cs
- PaperSize.cs
- EditorBrowsableAttribute.cs
- XhtmlTextWriter.cs
- BaseParser.cs
- SubMenuStyleCollection.cs
- CollectionTypeElement.cs
- UdpDiscoveryEndpoint.cs
- OSFeature.cs
- Help.cs
- TimerEventSubscription.cs
- TableAdapterManagerHelper.cs
- SqlHelper.cs
- StaticSiteMapProvider.cs
- ClockGroup.cs
- ElementsClipboardData.cs
- Overlapped.cs
- LineInfo.cs
- ISessionStateStore.cs
- PropertyFilterAttribute.cs
- EntityParameterCollection.cs
- ConfigXmlDocument.cs
- VarRemapper.cs
- StringConverter.cs
- ReaderOutput.cs
- ToolbarAUtomationPeer.cs
- MachineKeyConverter.cs
- KnowledgeBase.cs
- ObjectDataSourceWizardForm.cs
- DemultiplexingClientMessageFormatter.cs
- SliderAutomationPeer.cs
- XmlReaderSettings.cs
- safesecurityhelperavalon.cs
- PropertyInformationCollection.cs
- StaticSiteMapProvider.cs
- SchemaNotation.cs
- AggregationMinMaxHelpers.cs
- ResourceType.cs
- GridViewDeletedEventArgs.cs
- StyleBamlTreeBuilder.cs
- TransactionInterop.cs
- UncommonField.cs
- KeyEventArgs.cs
- DbConvert.cs
- GraphicsContext.cs
- EdmProviderManifest.cs
- Int32KeyFrameCollection.cs
- RegexCapture.cs
- Activity.cs
- DataGridViewRowStateChangedEventArgs.cs
- HtmlInputRadioButton.cs
- coordinatorfactory.cs
- SystemIPAddressInformation.cs
- Debugger.cs
- BaseTemplateBuildProvider.cs
- ExcCanonicalXml.cs
- NetworkInterface.cs
- TrustLevelCollection.cs
- DirectoryInfo.cs
- CodeTypeReferenceExpression.cs
- UniqueID.cs
- DecoderBestFitFallback.cs
- ButtonPopupAdapter.cs
- SubqueryRules.cs
- ManualWorkflowSchedulerService.cs
- ConnectionStringSettings.cs
- CodeVariableDeclarationStatement.cs
- ManifestResourceInfo.cs
- NaturalLanguageHyphenator.cs
- SliderAutomationPeer.cs
- ApplicationCommands.cs
- _NetRes.cs
- MobileUITypeEditor.cs
- MatrixIndependentAnimationStorage.cs
- PolicyValidationException.cs
- ReversePositionQuery.cs
- PointValueSerializer.cs
- DetailsViewDeletedEventArgs.cs
- PersonalizationAdministration.cs
- DataServiceException.cs
- RegistryDataKey.cs