SiteMapNodeCollection.Contains(SiteMapNode) SiteMapNodeCollection.Contains(SiteMapNode) SiteMapNodeCollection.Contains(SiteMapNode) SiteMapNodeCollection.Contains(SiteMapNode) Method

Определение

Определяет, содержит ли коллекция указанный объект SiteMapNode.Determines whether the collection contains a specific SiteMapNode object.

public:
 virtual bool Contains(System::Web::SiteMapNode ^ value);
public virtual bool Contains (System.Web.SiteMapNode value);
abstract member Contains : System.Web.SiteMapNode -> bool
override this.Contains : System.Web.SiteMapNode -> bool
Public Overridable Function Contains (value As SiteMapNode) As Boolean

Параметры

value
SiteMapNode SiteMapNode SiteMapNode SiteMapNode

Объект SiteMapNode, который требуется найти в коллекции SiteMapNodeCollection.The SiteMapNode to locate in the SiteMapNodeCollection.

Возвраты

Значение true, если коллекция SiteMapNodeCollection содержит заданный объект SiteMapNode; в противном случае — значение false.true if the SiteMapNodeCollection contains the specified SiteMapNode; otherwise, false.

Примеры

В следующем примере кода показано, как использовать Contains методы SiteMapNodeCollection и IndexOf класса.The following code example demonstrates how to use the Contains and IndexOf methods of the SiteMapNodeCollection class. Код проверяет два поставщика, AspNetXmlSiteMapProvider и MyXmlSiteMapProvider, для дочерних узлов корневого узла, которые являются повторяющимися.The code checks two providers, AspNetXmlSiteMapProvider and MyXmlSiteMapProvider, for child nodes of the root node that are duplicates.

String providername1 = "AspNetXmlSiteMapProvider";
String providername2 = "MyXmlSiteMapProvider";
SiteMapProviderCollection providers = SiteMap.Providers;

if (providers[providername1] != null && providers[providername2] != null)
{
  SiteMapProvider provider1 = providers[providername1];
  SiteMapProvider provider2 = providers[providername2];
  SiteMapNodeCollection collection1 = provider1.RootNode.ChildNodes;
  SiteMapNodeCollection collection2 = provider2.RootNode.ChildNodes;
  int matches = 0;
  foreach (SiteMapNode node in collection1)
  {
    if (collection2.Contains(node))
    {
      Response.Write("Match found at " +
        providername1 + ", index = " +
        collection1.IndexOf(node) + " with " +
        providername2 + ", index = " +
        collection2.IndexOf(node) + ".<br />");
      matches++;
    }
  }
  Response.Write("Number of matches found = " +
    matches.ToString() + ".");
}
else
{
  Response.Write(providername1 + " or " +
    providername2 + " not found.");
}
Dim providername1 As String = "xAspNetXmlSiteMapProvider"
Dim providername2 As String = "MyXmlSiteMapProvider"
Dim providers As SiteMapProviderCollection = SiteMap.Providers

If Not (providers(providername1) Is Nothing) AndAlso Not (providers(providername2) Is Nothing) Then
  Dim provider1 As SiteMapProvider = providers(providername1)
  Dim provider2 As SiteMapProvider = providers(providername2)
  Dim collection1 As SiteMapNodeCollection = provider1.RootNode.ChildNodes
  Dim collection2 As SiteMapNodeCollection = provider2.RootNode.ChildNodes
  Dim matches As Integer = 0
  Dim node As SiteMapNode
  For Each node In collection1
    If collection2.Contains(node) Then
      Response.Write("Match found at " & _
      providername1 & ", index = " & _
      collection1.IndexOf(node) & " with " & _
      providername2 & ", index = " & _
      collection2.IndexOf(node) & ".<br />")
      matches += 1
    End If
  Next node
  Response.Write("Number of matches found = " & _
  matches.ToString() + ".")
Else
  Response.Write(providername1 & " or " & _
  providername2 & " not found.")
End If    

Комментарии

Метод определяет равенство путем Object.Equals вызова метода. ContainsThe Contains method determines equality by calling the Object.Equals method.

Применяется к

Дополнительно