Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / Orcas / SP / ndp / fx / src / xsp / System / Web / Extensions / Script / Services / ProxyGenerator.cs / 1 / ProxyGenerator.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.Script.Services { using System; using System.Globalization; using System.Security.Permissions; using System.ServiceModel; using System.Web.Resources; [AspNetHostingPermission(SecurityAction.LinkDemand, Level = AspNetHostingPermissionLevel.Minimal)] public static class ProxyGenerator { public static string GetClientProxyScript(Type type, string path, bool debug) { 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); } 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. //------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.Script.Services { using System; using System.Globalization; using System.Security.Permissions; using System.ServiceModel; using System.Web.Resources; [AspNetHostingPermission(SecurityAction.LinkDemand, Level = AspNetHostingPermissionLevel.Minimal)] public static class ProxyGenerator { public static string GetClientProxyScript(Type type, string path, bool debug) { 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); } 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
- Stopwatch.cs
- HttpModuleActionCollection.cs
- DuplicateWaitObjectException.cs
- DiagnosticStrings.cs
- ItemCollectionEditor.cs
- ValueUtilsSmi.cs
- CopyCodeAction.cs
- BitmapImage.cs
- DataRow.cs
- RegexCharClass.cs
- CacheAxisQuery.cs
- HttpStaticObjectsCollectionWrapper.cs
- ProviderManager.cs
- DefinitionUpdate.cs
- CodeAttributeDeclarationCollection.cs
- StringUtil.cs
- TimeSpanHelper.cs
- WebPartConnection.cs
- PropVariant.cs
- DataFormat.cs
- ValueTypeFixupInfo.cs
- GlyphCollection.cs
- CompModSwitches.cs
- IISMapPath.cs
- QuestionEventArgs.cs
- IERequestCache.cs
- TransformerInfo.cs
- SqlDataAdapter.cs
- RegexTree.cs
- RadioButtonPopupAdapter.cs
- ClonableStack.cs
- Hex.cs
- FileIOPermission.cs
- CompilerGeneratedAttribute.cs
- CollectionBase.cs
- DataTableReader.cs
- BrushValueSerializer.cs
- AssemblyCache.cs
- SignedPkcs7.cs
- MimeMultiPart.cs
- WindowsTreeView.cs
- Oid.cs
- DriveInfo.cs
- HtmlInputRadioButton.cs
- FrameAutomationPeer.cs
- Line.cs
- BitmapEffectRenderDataResource.cs
- WebPartConnectionsCancelEventArgs.cs
- ArraySortHelper.cs
- DataGridViewRowsAddedEventArgs.cs
- EntityRecordInfo.cs
- isolationinterop.cs
- LogEntryUtils.cs
- GridViewRowPresenterBase.cs
- TemplateKeyConverter.cs
- IProvider.cs
- ExpandCollapsePattern.cs
- TypeUnloadedException.cs
- VoiceObjectToken.cs
- TransformerConfigurationWizardBase.cs
- SelectionProviderWrapper.cs
- ScrollChrome.cs
- MobileControlsSection.cs
- SqlXml.cs
- SimpleApplicationHost.cs
- EdmPropertyAttribute.cs
- GatewayIPAddressInformationCollection.cs
- ObjectManager.cs
- EventSinkHelperWriter.cs
- TypefaceMap.cs
- ToolboxItemAttribute.cs
- CalendarTable.cs
- CollectionBase.cs
- WindowsRegion.cs
- HeaderElement.cs
- GZipStream.cs
- XmlSchemaAnyAttribute.cs
- TableNameAttribute.cs
- RuleInfoComparer.cs
- SerializationHelper.cs
- ColumnMapCopier.cs
- wmiprovider.cs
- MouseActionValueSerializer.cs
- HyperLinkStyle.cs
- SettingsBase.cs
- PerformanceCountersElement.cs
- HtmlControl.cs
- AutomationInteropProvider.cs
- TabItemAutomationPeer.cs
- DataKey.cs
- FontStretches.cs
- CompileXomlTask.cs
- DataGridViewBand.cs
- PrintController.cs
- ReaderWriterLock.cs
- CanonicalFormWriter.cs
- XmlILOptimizerVisitor.cs
- CompoundFileDeflateTransform.cs
- basecomparevalidator.cs
- ToggleButtonAutomationPeer.cs