WebReferenceCollection 类
定义
描述 WebReference 对象的集合。Describes a collection of WebReference objects.
public ref class WebReferenceCollection sealed : System::Collections::CollectionBase
public sealed class WebReferenceCollection : System.Collections.CollectionBase
type WebReferenceCollection = class
inherit CollectionBase
Public NotInheritable Class WebReferenceCollection
Inherits CollectionBase
- 继承
示例
下面的代码示例演示如何使用此类。The following code example illustrates the use of this class.
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();
}
}
注解
使用此类 WebReference 在调用类的静态方法时传递对象的集合 GenerateWebReferences ServiceDescriptionImporter 。Use this class to pass a collection of WebReference objects when invoking the static GenerateWebReferences method of the ServiceDescriptionImporter class.
构造函数
WebReferenceCollection() |
初始化 WebReferenceCollection 类的新实例。Initializes a new instance of the WebReferenceCollection class. |
属性
Capacity |
获取或设置 CollectionBase 可包含的元素数。Gets or sets the number of elements that the CollectionBase can contain. (继承自 CollectionBase) |
Count |
获取 CollectionBase 实例中包含的元素数。Gets the number of elements contained in the CollectionBase instance. 不能重写此属性。This property cannot be overridden. (继承自 CollectionBase) |
InnerList |
获取一个 ArrayList,它包含 CollectionBase 实例中元素的列表。Gets an ArrayList containing the list of elements in the CollectionBase instance. (继承自 CollectionBase) |
Item[Int32] |
获取或设置指定索引处的 WebReference 实例。Gets or sets the WebReference instance at the specified index. |
List |
获取一个 IList,它包含 CollectionBase 实例中元素的列表。Gets an IList containing the list of elements in the CollectionBase instance. (继承自 CollectionBase) |
方法
Add(WebReference) |
将 WebReference 实例追加到集合中。Appends a WebReference instance to the collection. |
Clear() |
从 CollectionBase 实例移除所有对象。Removes all objects from the CollectionBase instance. 不能重写此方法。This method cannot be overridden. (继承自 CollectionBase) |
Contains(WebReference) |
确定该集合是否包含给定的 WebReference 实例。Determines whether the collection contains a given WebReference instance. |
CopyTo(WebReference[], Int32) |
将集合的成员复制到指定的数组中,从指定的数组索引处开始。Copies members of the collection to a specified array, starting at the specified array index. |
Equals(Object) |
确定指定对象是否等于当前对象。Determines whether the specified object is equal to the current object. (继承自 Object) |
GetEnumerator() |
返回循环访问 CollectionBase 实例的枚举器。Returns an enumerator that iterates through the CollectionBase instance. (继承自 CollectionBase) |
GetHashCode() |
作为默认哈希函数。Serves as the default hash function. (继承自 Object) |
GetType() |
获取当前实例的 Type。Gets the Type of the current instance. (继承自 Object) |
IndexOf(WebReference) |
确定指定的 WebReference 实例的索引。Determines the index of the specified WebReference instance. |
Insert(Int32, WebReference) |
在指定索引处插入指定的 WebReference 实例。Inserts the specified WebReference instance at the specified index. |
MemberwiseClone() |
创建当前 Object 的浅表副本。Creates a shallow copy of the current Object. (继承自 Object) |
OnClear() |
清除 CollectionBase 实例的内容时执行其他自定义进程。Performs additional custom processes when clearing the contents of the CollectionBase instance. (继承自 CollectionBase) |
OnClearComplete() |
在清除 CollectionBase 实例的内容之后执行其他自定义进程。Performs additional custom processes after clearing the contents of the CollectionBase instance. (继承自 CollectionBase) |
OnInsert(Int32, Object) |
在向 CollectionBase 实例中插入新元素之前执行其他自定义进程。Performs additional custom processes before inserting a new element into the CollectionBase instance. (继承自 CollectionBase) |
OnInsertComplete(Int32, Object) |
在向 CollectionBase 实例中插入新元素之后执行其他自定义进程。Performs additional custom processes after inserting a new element into the CollectionBase instance. (继承自 CollectionBase) |
OnRemove(Int32, Object) |
当从 CollectionBase 实例移除元素时执行其他自定义进程。Performs additional custom processes when removing an element from the CollectionBase instance. (继承自 CollectionBase) |
OnRemoveComplete(Int32, Object) |
在从 CollectionBase 实例中移除元素之后执行其他自定义进程。Performs additional custom processes after removing an element from the CollectionBase instance. (继承自 CollectionBase) |
OnSet(Int32, Object, Object) |
当在 CollectionBase 实例中设置值之前执行其他自定义进程。Performs additional custom processes before setting a value in the CollectionBase instance. (继承自 CollectionBase) |
OnSetComplete(Int32, Object, Object) |
当在 CollectionBase 实例中设置值后执行其他自定义进程。Performs additional custom processes after setting a value in the CollectionBase instance. (继承自 CollectionBase) |
OnValidate(Object) |
当验证值时执行其他自定义进程。Performs additional custom processes when validating a value. (继承自 CollectionBase) |
Remove(WebReference) |
从集合中移除指定的 WebReference 实例。Removes the specified WebReference instance from the collection. |
RemoveAt(Int32) |
移除 CollectionBase 实例的指定索引处的元素。Removes the element at the specified index of the CollectionBase instance. 此方法不可重写。This method is not overridable. (继承自 CollectionBase) |
ToString() |
返回表示当前对象的字符串。Returns a string that represents the current object. (继承自 Object) |
显式接口实现
ICollection.CopyTo(Array, Int32) |
从目标数组的指定索引处开始将整个 CollectionBase 复制到兼容的一维 Array。Copies the entire CollectionBase to a compatible one-dimensional Array, starting at the specified index of the target array. (继承自 CollectionBase) |
ICollection.IsSynchronized |
获取一个值,该值指示是否同步对 CollectionBase 的访问(线程安全)。Gets a value indicating whether access to the CollectionBase is synchronized (thread safe). (继承自 CollectionBase) |
ICollection.SyncRoot |
获取可用于同步对 CollectionBase 的访问的对象。Gets an object that can be used to synchronize access to the CollectionBase. (继承自 CollectionBase) |
IList.Add(Object) |
将对象添加到 CollectionBase 的结尾处。Adds an object to the end of the CollectionBase. (继承自 CollectionBase) |
IList.Contains(Object) |
确定 CollectionBase 是否包含特定元素。Determines whether the CollectionBase contains a specific element. (继承自 CollectionBase) |
IList.IndexOf(Object) |
搜索指定的 Object,并返回整个 CollectionBase 中第一个匹配项的从零开始的索引。Searches for the specified Object and returns the zero-based index of the first occurrence within the entire CollectionBase. (继承自 CollectionBase) |
IList.Insert(Int32, Object) |
将元素插入 CollectionBase 的指定索引处。Inserts an element into the CollectionBase at the specified index. (继承自 CollectionBase) |
IList.IsFixedSize |
获取一个值,该值指示 CollectionBase 是否具有固定大小。Gets a value indicating whether the CollectionBase has a fixed size. (继承自 CollectionBase) |
IList.IsReadOnly |
获取一个值,该值指示 CollectionBase 是否为只读。Gets a value indicating whether the CollectionBase is read-only. (继承自 CollectionBase) |
IList.Item[Int32] |
获取或设置指定索引处的元素。Gets or sets the element at the specified index. (继承自 CollectionBase) |
IList.Remove(Object) |
从 CollectionBase 中移除特定对象的第一个匹配项。Removes the first occurrence of a specific object from the CollectionBase. (继承自 CollectionBase) |
扩展方法
Cast<TResult>(IEnumerable) |
将 IEnumerable 的元素强制转换为指定的类型。Casts the elements of an IEnumerable to the specified type. |
OfType<TResult>(IEnumerable) |
根据指定类型筛选 IEnumerable 的元素。Filters the elements of an IEnumerable based on a specified type. |
AsParallel(IEnumerable) |
启用查询的并行化。Enables parallelization of a query. |
AsQueryable(IEnumerable) |
将 IEnumerable 转换为 IQueryable。Converts an IEnumerable to an IQueryable. |