Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / xsp / System / Extensions / Script / Services / ProxyGenerator.cs / 1305376 / ProxyGenerator.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.Script.Services { using System; using System.Globalization; using System.ServiceModel; using System.ServiceModel.Description; using System.Web.Resources; public static class ProxyGenerator { public static string GetClientProxyScript(Type type, string path, bool debug) { return GetClientProxyScript(type, path, debug, null); } public static string GetClientProxyScript(Type type, string path, bool debug, ServiceEndpoint serviceEndpoint) { if (type == null) { throw new ArgumentNullException("type"); } if (path == null) { throw new ArgumentNullException("path"); } WebServiceData webServiceData = null; ClientProxyGenerator proxyGenerator = null; if (IsWebServiceType(type)) { proxyGenerator = new WebServiceClientProxyGenerator(path, debug); webServiceData = new WebServiceData(type, false); } else if (IsPageType(type)) { proxyGenerator = new PageClientProxyGenerator(path, debug); webServiceData = new WebServiceData(type, true); } else if(IsWCFServiceType(type)){ return WCFServiceClientProxyGenerator.GetClientProxyScript(type, path, debug, serviceEndpoint); } else { throw new ArgumentException(String.Format(CultureInfo.CurrentCulture, AtlasWeb.ProxyGenerator_UnsupportedType, type.FullName)); } return proxyGenerator.GetClientProxyScript(webServiceData); } private static bool IsPageType(Type type) { return typeof(System.Web.UI.Page).IsAssignableFrom(type); } private static bool IsWCFServiceType(Type type) { object[] attribs = type.GetCustomAttributes(typeof(ServiceContractAttribute), true); return (attribs.Length != 0); } private static bool IsWebServiceType(Type type) { object[] attribs = type.GetCustomAttributes(typeof(ScriptServiceAttribute), true); return (attribs.Length != 0); } } } // 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
- StorageEntitySetMapping.cs
- NetNamedPipeBindingCollectionElement.cs
- StatusBarPanel.cs
- SymmetricSecurityBindingElement.cs
- DiscoveryMessageProperty.cs
- ExpressionEditorAttribute.cs
- ProcessHostFactoryHelper.cs
- StateChangeEvent.cs
- ExpressionValueEditor.cs
- SuppressMergeCheckAttribute.cs
- Signature.cs
- HandlerMappingMemo.cs
- HotSpot.cs
- ParameterReplacerVisitor.cs
- Command.cs
- XmlComplianceUtil.cs
- DataGridViewCellConverter.cs
- Transform3DCollection.cs
- DocumentScope.cs
- _SslStream.cs
- SqlDependencyUtils.cs
- URLIdentityPermission.cs
- TextTreeUndo.cs
- RootNamespaceAttribute.cs
- documentsequencetextpointer.cs
- DataTableCollection.cs
- ExpressionEditorAttribute.cs
- DataSourceCacheDurationConverter.cs
- EntityClassGenerator.cs
- NullableIntSumAggregationOperator.cs
- AnonymousIdentificationModule.cs
- LongSumAggregationOperator.cs
- _UncName.cs
- TransformerConfigurationWizardBase.cs
- BindToObject.cs
- recordstatescratchpad.cs
- ObjectCloneHelper.cs
- StatusStrip.cs
- BuildProvider.cs
- MatrixTransform.cs
- DirtyTextRange.cs
- SqlException.cs
- SqlErrorCollection.cs
- followingsibling.cs
- DependencyPropertyConverter.cs
- PlaceHolder.cs
- StagingAreaInputItem.cs
- TimelineGroup.cs
- BindingCollection.cs
- AtomParser.cs
- LoopExpression.cs
- DocumentScope.cs
- SqlCacheDependencyDatabaseCollection.cs
- ServiceDefaults.cs
- GradientBrush.cs
- DataStorage.cs
- WebPartConnection.cs
- EditorZone.cs
- AuthenticatingEventArgs.cs
- ByteFacetDescriptionElement.cs
- SqlWriter.cs
- ConsumerConnectionPoint.cs
- DomNameTable.cs
- WhitespaceRuleReader.cs
- ParallelActivityDesigner.cs
- EventMappingSettingsCollection.cs
- SEHException.cs
- TypeNameConverter.cs
- SqlMetaData.cs
- AssemblyNameProxy.cs
- XamlReaderHelper.cs
- TransactionTraceIdentifier.cs
- FragmentNavigationEventArgs.cs
- ButtonChrome.cs
- DbProviderFactory.cs
- ObjectHelper.cs
- IDQuery.cs
- XmlSignatureManifest.cs
- Scene3D.cs
- TextElementEnumerator.cs
- ServicePointManager.cs
- PasswordRecoveryDesigner.cs
- WinEventTracker.cs
- ExtensibleSyndicationObject.cs
- LoginView.cs
- InfoCardMetadataExchangeClient.cs
- CodeCompileUnit.cs
- IsolatedStorage.cs
- WaitHandleCannotBeOpenedException.cs
- ContextItem.cs
- PrimitiveCodeDomSerializer.cs
- NetSectionGroup.cs
- LocatorPart.cs
- CodeDomDecompiler.cs
- EventRouteFactory.cs
- StatusBarItemAutomationPeer.cs
- DataSourceProvider.cs
- TypeDescriptionProvider.cs
- UpdateEventArgs.cs
- ObjectCloneHelper.cs