WebReferenceCollection 类  
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
描述 WebReference 对象的集合。
public ref class WebReferenceCollection sealed : System::Collections::CollectionBasepublic sealed class WebReferenceCollection : System.Collections.CollectionBasetype WebReferenceCollection = class
    inherit CollectionBasePublic NotInheritable Class WebReferenceCollection
Inherits CollectionBase- 继承
示例
下面的代码示例演示了此类的使用。
using System;
using System.CodeDom;
using System.CodeDom.Compiler;
using System.Security.Permissions;
using System.Web.Services;
using System.Web.Services.Description;
using System.Web.Services.Discovery;
using System.Xml;
using System.Xml.Serialization;
class Test
{
    [SecurityPermissionAttribute(SecurityAction.Demand, Unrestricted=true)]
    static void Run(){
   // Get a WSDL file describing a service.
        ServiceDescription description = ServiceDescription.Read("DataTypes_CS.wsdl");
    // Initialize a service description importer.
    ServiceDescriptionImporter importer = new ServiceDescriptionImporter();
    importer.ProtocolName = "Soap12";  // Use SOAP 1.2.
    importer.AddServiceDescription(description,null,null);
    // Report on the service descriptions.
    Console.WriteLine("Importing {0} service descriptions with {1} associated schemas.",
                      importer.ServiceDescriptions.Count, importer.Schemas.Count);
    // Generate a proxy client.
    importer.Style = ServiceDescriptionImportStyle.Client;
    // Generate properties to represent primitive values.
    importer.CodeGenerationOptions = System.Xml.Serialization.CodeGenerationOptions.GenerateProperties;
    // Initialize a Code-DOM tree into which we will import the service.
    CodeNamespace nmspace = new CodeNamespace();
    CodeCompileUnit unit1 = new CodeCompileUnit();
    unit1.Namespaces.Add(nmspace);
    // Import the service into the Code-DOM tree. This creates proxy code
    // that uses the service.
    ServiceDescriptionImportWarnings warning = importer.Import(nmspace, unit1);
    if (warning == 0)
    {
        // Generate and print the proxy code in C#.
        CodeDomProvider provider1 = CodeDomProvider.CreateProvider("CSharp");
        provider1.GenerateCodeFromCompileUnit(unit1, Console.Out, new CodeGeneratorOptions());
    }
    else
    {
        // Print an error message.
        Console.WriteLine("Warning: " + warning); 
    }
        string url = "AddNumbers.wsdl";
        // Read in a WSDL service description.
        XmlTextReader reader = new XmlTextReader(url);
        ServiceDescription wsdl = ServiceDescription.Read(reader);
        // Create a WSDL collection.
        DiscoveryClientDocumentCollection wsdlCollection = new DiscoveryClientDocumentCollection();
        wsdlCollection.Add(url, wsdl);
        // Create a namespace and a unit for compilation.
        CodeNamespace space = new CodeNamespace();
        CodeCompileUnit unit = new CodeCompileUnit();
        unit.Namespaces.Add(space);
        // Create a web referernce using the WSDL collection.
        WebReference reference = new WebReference(wsdlCollection, space);
        reference.ProtocolName = "Soap12";
        // Print some information about the web reference.
        Console.WriteLine("Base Url = {0}", reference.AppSettingBaseUrl);
        Console.WriteLine("Url Key = {0}", reference.AppSettingUrlKey);
        Console.WriteLine("Documents = {0}", reference.Documents.Count);
        // Create a web reference collection.
        WebReferenceCollection references = new WebReferenceCollection();
        references.Add(reference);
        // Compile a proxy client and print out the code. 
        CodeDomProvider provider = CodeDomProvider.CreateProvider("CSharp");
        WebReferenceOptions options = new WebReferenceOptions();
        options.Style = ServiceDescriptionImportStyle.Client;
        options.CodeGenerationOptions = CodeGenerationOptions.GenerateNewAsync;
        ServiceDescriptionImporter.GenerateWebReferences(
            references,
            provider,
            unit,
            options        
        );
        provider.GenerateCodeFromCompileUnit(unit, Console.Out, new CodeGeneratorOptions() );          
    }
    static void Main ()
    {
        Test.Run();
    }
}
注解
在调用类的ServiceDescriptionImporter静态GenerateWebReferences方法时,使用此类传递对象的集合WebReference。
构造函数
| WebReferenceCollection() | 初始化 WebReferenceCollection 类的新实例。 | 
属性
| Capacity | 获取或设置 CollectionBase 可包含的元素数。(继承自 CollectionBase) | 
| Count | 获取 CollectionBase 实例中包含的元素数。 不能重写此属性。(继承自 CollectionBase) | 
| InnerList | 获取一个 ArrayList,它包含 CollectionBase 实例中元素的列表。(继承自 CollectionBase) | 
| Item[Int32] | 获取或设置指定索引处的 WebReference 实例。 | 
| List | 获取一个 IList,它包含 CollectionBase 实例中元素的列表。(继承自 CollectionBase) | 
方法
显式接口实现
| ICollection.CopyTo(Array, Int32) | 从目标数组的指定索引处开始将整个 CollectionBase 复制到兼容的一维 Array。(继承自 CollectionBase) | 
| ICollection.IsSynchronized | 获取一个值,该值指示是否同步对 CollectionBase 的访问(线程安全)。(继承自 CollectionBase) | 
| ICollection.SyncRoot | 获取可用于同步对 CollectionBase 的访问的对象。(继承自 CollectionBase) | 
| IList.Add(Object) | 将对象添加到 CollectionBase 的结尾处。(继承自 CollectionBase) | 
| IList.Contains(Object) | 确定 CollectionBase 是否包含特定元素。(继承自 CollectionBase) | 
| IList.IndexOf(Object) | 搜索指定的 Object,并返回整个 CollectionBase 中第一个匹配项的从零开始的索引。(继承自 CollectionBase) | 
| IList.Insert(Int32, Object) | 将元素插入 CollectionBase 的指定索引处。(继承自 CollectionBase) | 
| IList.IsFixedSize | 获取一个值,该值指示 CollectionBase 是否具有固定大小。(继承自 CollectionBase) | 
| IList.IsReadOnly | 获取一个值,该值指示 CollectionBase 是否为只读。(继承自 CollectionBase) | 
| IList.Item[Int32] | 获取或设置指定索引处的元素。(继承自 CollectionBase) | 
| IList.Remove(Object) | 从 CollectionBase 中移除特定对象的第一个匹配项。(继承自 CollectionBase) | 
扩展方法
| Cast<TResult>(IEnumerable) | 将 IEnumerable 的元素强制转换为指定的类型。 | 
| OfType<TResult>(IEnumerable) | 根据指定类型筛选 IEnumerable 的元素。 | 
| AsParallel(IEnumerable) | 启用查询的并行化。 | 
| AsQueryable(IEnumerable) | 将 IEnumerable 转换为 IQueryable。 |