This article was translated by machine. To view in the article in English, select the English check box. You can also display the English text in a popup window by moving the mouse pointer over the text.
الترجمة
الأصلي
This documentation is archived and is not being maintained.

UriTemplateEquivalenceComparer الفئة

Visual Studio 2010

استخدام فئة إلى مقارنة UriTemplateمثيلات تماثل البناء (عوضاً عن مرجع).

مساحة الاسم:  System
التجميع:  System.ServiceModel (في System.ServiceModel.dll)

public class UriTemplateEquivalenceComparer : IEqualityComparer<UriTemplate>

UriTemplate مثيلات مقارنة باستخدام مرجع مساواة بواسطة الافتراضي. UriTemplateEquivalenceComparer فئة بتقييم استخدام تماثل IsEquivalentTo(UriTemplate)بدلاً من الافتراضي مرجع مساواة الاختيار.Th هو الفئة هو مفيدة عندما wهوh لليقارن بين UriTemplateمثيلات استناداً UR هو أنها تطابق عوضاً عن مرجع الصارمة مساواة.

يظهر المثال التالي الفرق بين مساواة المرجع و مساواة البناء.ويظهر أيضا كيف إلى استخدامها في UriTemplateEquivalenceComparerالمقارن في القاموس.


// Define two structurally equivalent templates
UriTemplate temp1 = new UriTemplate("weather/{state}/{city}");
UriTemplate temp2 = new UriTemplate("weather/{country}/{village}");

// Notice they are not reference equal, in other words
// they are do not refer to the same object
if (temp1 == temp2)
    Console.WriteLine("{0} and {1} are reference equal", temp1, temp2);
else
    Console.WriteLine("{0} and {1} are NOT reference equal", temp1, temp2);

// Notice they are structrually equal
if (temp1.IsEquivalentTo(temp2))
    Console.WriteLine("{0} and {1} are structurally equal", temp1, temp2);
else
    Console.WriteLine("{0} and {1} are NOT structurally equal", temp1, temp2);

// Create a dictionary and use UriTemplateEquivalenceComparer as the comparer
Dictionary<UriTemplate, object> templates = new Dictionary<UriTemplate, object>(new UriTemplateEquivalenceComparer());

// Add template 1 into the dictionary
templates.Add(temp1, "template1");

// The UriTemplateEquivalenceComparer will be used here to compare the template in the table with template2
// they are structurally equivalent, so ContainsKey will return true.
if (templates.ContainsKey(temp2))
    Console.WriteLine("Both templates hash to the same value");
else
    Console.WriteLine("Both templates do NOT hash to the same value");


System.Object
  System.UriTemplateEquivalenceComparer

يتم تأمين العملية الجزئية لأي عضو عمومي ثابت (مشترك في Visual Basic) من هذا النوع. لن يتم ضمان تأمين العملية الجزئية لأي عضو مثيل.

نظام التشغيل Windows 7, Windows Vista, Windows XP SP2, Windows Server 2008, نظام التشغيل Windows Server 2003

لا يدعم .NET Framework و .NET Compact Framework كافة الإصدارات الخاصة بكل نظام أساسي. للحصول على قائمة بالإصدارات المدعمة، راجع متطلبات النظام إطار عمل .NET.

.NET Framework

مدعوم في: 4, 3.5

NET Framework. Client Profile

مدعوم في: 4, 3.5 المزود بحزمة الخدمة SP1
إظهار: