Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / xsp / System / Web / Compilation / WsdlBuildProvider.cs / 1305376 / WsdlBuildProvider.cs
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//-----------------------------------------------------------------------------
namespace System.Web.Compilation {
using System;
using System.Globalization;
using System.IO;
using System.Diagnostics;
using System.Web.Services.Description;
using System.Xml;
using System.Xml.Serialization;
using System.CodeDom;
using System.CodeDom.Compiler;
using System.Web.Configuration;
using System.Web.Hosting;
using System.Web.Util;
using Util=System.Web.UI.Util;
[BuildProviderAppliesTo(BuildProviderAppliesTo.Code)]
internal class WsdlBuildProvider: BuildProvider {
public override void GenerateCode(AssemblyBuilder assemblyBuilder) {
// Get the namespace that we will use
string ns = Util.GetNamespaceFromVirtualPath(VirtualPathObject);
ServiceDescription sd;
// Load the wsdl file
using (Stream stream = VirtualPathObject.OpenFile()) {
try {
sd = ServiceDescription.Read(stream);
}
catch (InvalidOperationException e) {
// It can throw an InvalidOperationException, with the relevant
// XmlException as the inner exception. If so, throw that instead.
XmlException xmlException = e.InnerException as XmlException;
if (xmlException != null)
throw xmlException;
throw;
}
}
ServiceDescriptionImporter importer = new ServiceDescriptionImporter();
#if !FEATURE_PAL
importer.CodeGenerator = assemblyBuilder.CodeDomProvider;
importer.CodeGenerationOptions = CodeGenerationOptions.GenerateProperties |
CodeGenerationOptions.GenerateNewAsync | CodeGenerationOptions.GenerateOldAsync;
#endif // !FEATURE_PAL
importer.ServiceDescriptions.Add(sd);
CodeCompileUnit codeCompileUnit = new CodeCompileUnit();
CodeNamespace codeNamespace = new CodeNamespace(ns);
codeCompileUnit.Namespaces.Add(codeNamespace);
// Create the code compile unit
importer.Import(codeNamespace, codeCompileUnit);
// Add the CodeCompileUnit to the compilation
assemblyBuilder.AddCodeCompileUnit(this, codeCompileUnit);
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//-----------------------------------------------------------------------------
namespace System.Web.Compilation {
using System;
using System.Globalization;
using System.IO;
using System.Diagnostics;
using System.Web.Services.Description;
using System.Xml;
using System.Xml.Serialization;
using System.CodeDom;
using System.CodeDom.Compiler;
using System.Web.Configuration;
using System.Web.Hosting;
using System.Web.Util;
using Util=System.Web.UI.Util;
[BuildProviderAppliesTo(BuildProviderAppliesTo.Code)]
internal class WsdlBuildProvider: BuildProvider {
public override void GenerateCode(AssemblyBuilder assemblyBuilder) {
// Get the namespace that we will use
string ns = Util.GetNamespaceFromVirtualPath(VirtualPathObject);
ServiceDescription sd;
// Load the wsdl file
using (Stream stream = VirtualPathObject.OpenFile()) {
try {
sd = ServiceDescription.Read(stream);
}
catch (InvalidOperationException e) {
// It can throw an InvalidOperationException, with the relevant
// XmlException as the inner exception. If so, throw that instead.
XmlException xmlException = e.InnerException as XmlException;
if (xmlException != null)
throw xmlException;
throw;
}
}
ServiceDescriptionImporter importer = new ServiceDescriptionImporter();
#if !FEATURE_PAL
importer.CodeGenerator = assemblyBuilder.CodeDomProvider;
importer.CodeGenerationOptions = CodeGenerationOptions.GenerateProperties |
CodeGenerationOptions.GenerateNewAsync | CodeGenerationOptions.GenerateOldAsync;
#endif // !FEATURE_PAL
importer.ServiceDescriptions.Add(sd);
CodeCompileUnit codeCompileUnit = new CodeCompileUnit();
CodeNamespace codeNamespace = new CodeNamespace(ns);
codeCompileUnit.Namespaces.Add(codeNamespace);
// Create the code compile unit
importer.Import(codeNamespace, codeCompileUnit);
// Add the CodeCompileUnit to the compilation
assemblyBuilder.AddCodeCompileUnit(this, codeCompileUnit);
}
}
}
// 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
- CustomWebEventKey.cs
- WebPermission.cs
- ListBoxDesigner.cs
- FileLevelControlBuilderAttribute.cs
- FunctionImportMapping.ReturnTypeRenameMapping.cs
- CompilerParameters.cs
- IndependentAnimationStorage.cs
- PathFigure.cs
- AutomationProperties.cs
- FileDialog_Vista_Interop.cs
- DisposableCollectionWrapper.cs
- EventDrivenDesigner.cs
- XmlSchemaInferenceException.cs
- Popup.cs
- FileDataSourceCache.cs
- WebPartManager.cs
- Timer.cs
- UnsafeNativeMethods.cs
- XmlILModule.cs
- SessionStateModule.cs
- EdmError.cs
- DebugView.cs
- CqlBlock.cs
- PropertyRef.cs
- _SslSessionsCache.cs
- DataGridViewSortCompareEventArgs.cs
- VarRemapper.cs
- NameTable.cs
- UnsafeNativeMethods.cs
- GeometryGroup.cs
- BlurEffect.cs
- LineGeometry.cs
- Popup.cs
- SyndicationDeserializer.cs
- XmlSchemaCollection.cs
- RadioButtonDesigner.cs
- ResourceIDHelper.cs
- basevalidator.cs
- XsltFunctions.cs
- SlipBehavior.cs
- XmlQueryOutput.cs
- XsdDuration.cs
- WebPartTransformerAttribute.cs
- TaskSchedulerException.cs
- DeflateEmulationStream.cs
- RequestCacheEntry.cs
- ViewBox.cs
- DataKeyArray.cs
- PropertyDescriptorGridEntry.cs
- AttributeExtensions.cs
- TextTreeObjectNode.cs
- HttpGetServerProtocol.cs
- HtmlShim.cs
- ListBindingConverter.cs
- ToolStripSeparator.cs
- MaterialCollection.cs
- ControlCachePolicy.cs
- TextParagraphCache.cs
- DataGrid.cs
- Crc32.cs
- PropertyManager.cs
- TemplateField.cs
- SslStream.cs
- IFlowDocumentViewer.cs
- ValidationEventArgs.cs
- BulletChrome.cs
- Maps.cs
- Validator.cs
- HtmlImage.cs
- DataSourceXmlClassAttribute.cs
- QueryableDataSourceView.cs
- SafeNativeMethods.cs
- NameValueCollection.cs
- TextHidden.cs
- PhysicalOps.cs
- BorderGapMaskConverter.cs
- DocumentGridPage.cs
- SecurityAppliedMessage.cs
- WindowsFormsDesignerOptionService.cs
- TextBlock.cs
- CommandDesigner.cs
- IProvider.cs
- CqlIdentifiers.cs
- ProjectionPlan.cs
- CopyAction.cs
- DesignerToolStripControlHost.cs
- IgnorePropertiesAttribute.cs
- RedistVersionInfo.cs
- StatusBar.cs
- SoapWriter.cs
- SQLBoolean.cs
- ClientBuildManagerCallback.cs
- ProfileGroupSettings.cs
- LongPath.cs
- GrammarBuilderWildcard.cs
- SqlPersistenceWorkflowInstanceDescription.cs
- TextSchema.cs
- x509store.cs
- InvalidFilterCriteriaException.cs
- ByteStreamGeometryContext.cs