في الفئات المخصصة أمر بالغ الأهمية لضمان مقارنة الكائنات المناسبة والتجزئة. توضح هذه المقالة الطريقة الصحيحة لتنفيذ هذه الأساليب لفئة التوصية الخاصة بك لتمكين استخدامها مع طريقة LINQ باستثناء (). () ، تحتاج إلى توفير تطبيق مخصص يقارن الكائنات بناءً على خصائصها الفريدة. في حالتك ، فإن خاصية التوصية هي معرف مناسب. إليك التنفيذ المصحح:
{ var item = obj as complydto ؛ إذا (البند == فارغ) { العودة كاذبة } إرجاع this.recommendationId.equals (item.RecommendationId) ؛ }
تنفيذ GethashCode ()للمقارنة الثابتة ، يجب أن يكون رمز التجزئة الذي تم إرجاعه هو نفسه بالنسبة للكائنات ذات خصائص التعريف نفسها. في حالتك ، يمكنك إرجاع رمز التجزئة لخاصية التوصية:
تجاوز عام int gethashcode () { إرجاع this.recommendationId.gethashCode () ؛ }
الاستخدام مع LINQ باستثناء ()
public override bool Equals(object obj) { var item = obj as RecommendationDTO; if (item == null) { return false; } return this.RecommendationId.Equals(item.RecommendationId); }
var list1 = new list { / * ... * /} ؛ var list2 = new list { / * ... * /} ؛ var result = list1.except (list2) ؛
ملاحظة:تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3