fekre-bekr,learning,source,سورس,سورس رایگان,آموزش,اخبار,فناوری اطلاعات,mvc,.net,ساری,آموزشگاه,asp.net,c#.net,programing,c++,vb,آموزش برنامه نویسی,دانلود

اشتراک در سایت


مطالب تصادفی
اخبار و مقالات در فکر بکر مقایسه واحدهای اندازه گیری rem و em در css

وقتی صحبت از واحدهای اندازه گیری در CSS به میان می آید، ما انتخاب های خوبی داریم. در دنیای امروزی طراحی‌های واکنش‌گرا، واحدهای ن ...


اخبار و مقالات در فکر بکر آموزش مبحث Single Responsibility Principle (SRP) از بخش اصول طراحی شی گرا (SOLID)

در این اموزش هدف ایجاد کلاس و اشیاء با کمترین وابستگی جهت بهینه کردن تست و آسان نمودن توسعه نرم افزار می باشد. لذا برنامه نویس با ...


اخبار و مقالات در فکر بکر وارد کردن فقط حروف فارسی و جلوگیری از ورود حروف فارسی در تکست باکس با استفاده از JQuery

در این آموزش با استفاده از الگوها از درج کاراکترهای غیر مجاز که در این اموزش هدف مدیریت حروف فارسی و انگلیسی می باشد می پردازیم. ...


اخبار و مقالات در فکر بکر آموزش اتصال داده ها بین دو کنترل DropDownList در Asp.netMVC بصورت Ajax

در این قسمت به آموزش اتصال داده ها بین دو کنترل DropDownList مانند آنچه که جهت نمایش شهر ها بر اساس استان انتخاب شده مورد استفاد ...


اخبار و مقالات در فکر بکر حل تمرین مسائل برنامه نویسی از بخش کنترل ها (Windows Form) در سی شارپ

جهت مشاهده سوال و دانلود سورس آن لطفا به ادامه مطلب توجه نمایید. ...


اخبار و مقالات در فکر بکر آموزش تحت شبکه کردن برنامه های مبتنی بر c# در sql server

در این آموزش به چگونگی استفاده از یک برنامه ویندوزی بصورت تحت شبکه توسط چندین سیستم خواهیم پرداخت. معمولا هر برنامه کاربردی دارا ...


اخبار و مقالات در فکر بکر آموزش ایجاد custom model binder در Asp.net core

در این اموزش قصد داریم مروری بر نحوه ایجاد اتصال داده ای سفارشی جهت درخواست بر روی مدل موجود در پروژه داشته باشیم. ...


اخبار و مقالات در فکر بکر سورس برنامه notepad در سی شارپ

در این برنامه سورس notepad در c# را بصورت رایگان برای شما کاربران عزیز در فکر بکر جهت دانلود قرار دادیم ...


اخبار و مقالات در فکر بکر آموزش Serialize و Deserialize اطلاعات در قالب Json به زبان C#.net

JSON مخفف عبارت «Javascript Object Notation» به معنی «نشان‌گذاری شیء جاوااسکریپت» است. و با استفاده از آن میتوان اطلاعات مورد نظر ...


اخبار و مقالات در فکر بکر آموزش نحوه ایجاد Extention method در C#

در این بخش با ارائه مثال عملی تبدیل تاریخ میلادی به شمسی به آموزش Extention method می پردازیم. ...


اخبار و مقالات در فکر بکر آموزش رمزنگاری فایلها در asp.net core

با توجه به اینکه بسیاری از فایلهای ذخیره شده بر روی سرور از اهمیت بالایی برخوردار هستند ، بنابراین کدنویسی بخش رمزنگاری فایلها جه ...


اخبار و مقالات در فکر بکر آموزش ایجاد برنامه نصب (setup) قسمت دوم

در این مرحله برای پروژه ای که با زبان C# طراحی کردیم یک فایل setup خواهیم ساخت.در این آموزش برای ساخت برنامه setup از نرم افزار i ...


اخبار و مقالات در فکر بکر آشنایی با مفهوم Generic در C#.net

Generics یکی از ویژگی های قدرتمند برای بسیاری از زبان های برنامه نویسی از جمله C# است. که به شما امکان می دهد کدی بنویسید که می ...


اخبار و مقالات در فکر بکر قالب پنل ادمین

جهت دانلود قالب پنل مدیریتی به ادامه مطلب مراجعه نمایید ...


پیوندها
5 (1)

تابع Contains برای بررسی یک مقدار در یک مجموعه مورد استفاده قرار میگیرد اما نحوه استفاده این تابع برای مدلها نسبت به انواع اولیه مانند آرایه ای از نوع int و .... کمی متفاوت می باشد.
گروه : EntityFrameWork
تاریخ انتشار: 1395/04/02

فکر بکر

دستورات زیر را در نظر بگیرید


IList<int> intList = new List<int>() { 1, 2, 3, 4, 5 };
bool result = intList.Contains(10);  // returns false

 در قطعه کد بالا شرط وجود عدد 10 در لیست مورد بررسی قرار گرفته است و تابع Contains بدلیل پیداد نکردن عدد ده در لیست مقدار false را بر میگرداند.

اکنون این تابع را در مجموعه ای از کلاس مورد بررسی قرار می دهیم.

IList<Student> studentList = new List<Student>() { 
new Student() { StudentID = 1, StudentName = "John", Age = 18 } ,
new Student() { StudentID = 2, StudentName = "Steve",  Age = 15 } ,
new Student() { StudentID = 3, StudentName = "Bill",  Age = 25 } ,
new Student() { StudentID = 4, StudentName = "Ram" , Age = 20 } ,
new Student() { StudentID = 5, StudentName = "Ron" , Age = 19 } 
    };

Student std = new Student(){ StudentID =3, StudentName = "Bill"};
bool result = studentList.Contains(std); //returns false

 همانطور که مشاهده میکنید رکورد مورد نظر در مجموعه وجود دارد اما تابع Contains عبارت false را برمیگرداند. چرا که این تابع در بررسی اشیاء قادر به مقایسه مقادیر آنها نمی باشد لذا برای اینکار باید از اینترفیس IEqualityComparer استفاده نماییم . به قطعه کد زیر دقت نمایید.

class StudentComparer : IEqualityComparer<Student>
    {
        public bool Equals(Student x, Student y)
        {
            if (x.StudentID == y.StudentID && 
                        x.StudentName.ToLower() == y.StudentName.ToLower())
                return true;

            return false;
        }

        public int GetHashCode(Student obj)
        {
            return obj.GetHashCode();
        }
}

اینترفیس IEqualityComparer درای دو متد Equals و GetHashCode میباشد که هردوی آنها باید در کلاس مشتق شده پیاده سازی شوند .

هم اکنون شما میتوانید با استفاده از کلاس StudentComparer و متد Equals در برنامه خود استفاده نماید با توجه به قطعه کد زیر.

Student std = new Student(){ StudentID =3, StudentName = "Bill"};
bool result = studentList.Contains(std, new StudentComparer()); //returns true

 

مطلب مشابهی وجود ندارد
شما اولین نفری باشید که نظر میدهید

bK4AUi

آموزش کار با کوکی ها (Cookie) در Asp.net core -------- آموزش رمزنگاری فایلها در asp.net core -------- مقایسه واحدهای اندازه گیری rem و em در css -------- آشنایی با مفهوم Generic در C#.net -------- نحوه خواندن اطلاعات از فایل appsetting.json در Asp.net Core -------- آموزش استفاده از CQRS و Mediator در Asp.Net Core -------- نحوه ایجاد image checkbox در html css -------- عملیات crud و WebApi در Asp.net 6 -------- آموزش ایجاد custom model binder در Asp.net core -------- آموزش استفاده از Log4net در Asp.net 5 -------- آموزش پیاده سازی UnitOfWork در Asp.net Core قسمت اول -------- پیاده سازی Repository Pattern بصورت Generic Class -------- وارد کردن فقط حروف فارسی و جلوگیری از ورود حروف فارسی در تکست باکس با استفاده از JQuery -------- سورس استفاده از کامپوننت Roxy File manager در Asp.net core -------- آموزش ساخت صفحه Page Not Found (404) در Aspnet core -------- آموزش ایجاد Tag Helper سفارشی در Asp.net core -------- آموزش نحوه ایجاد Model برای دیتابیس موجود در Entity Framework Core -------- آموزش نحوه Upload و Download در Asp.net core 2 -------- آموزش dependency injection در Asp.net core 2 -------- آموزش تحت شبکه کردن برنامه های مبتنی بر c# در sql server -------- آموزش استفاده از Bundler & Minifier در Asp.Net Core -------- مروری بر Identity در Asp.net core2.1 (بخش دوم) -------- مروری بر Identity در Asp.net core2.1 (بخش اول) -------- آموزش مبحث Single Responsibility Principle (SRP) از بخش اصول طراحی شی گرا (SOLID) -------- آموزش publish کردن برنامه های Asp.net core بر روی سرور iis -------- پیاده سازی مسیریابی با استفاده از الگوریتم پیمایش اول سطح یا جستجوی اول سطح (BFS) در سی شارپ -------- آشنایی با SignalR در Asp.net core -------- آموزش استفاده از کلاس SeedData در Asp.net Core -------- قالب سایت فروشگاهی -------- آموزش ایجاد برنامه نصب (setup) قسمت سوم -------- آموزش ایجاد برنامه نصب (setup) قسمت دوم -------- آموزش ایجاد برنامه نصب (setup) قسمت اول -------- آموزش عملیات CRUD با استفاده از Ragor Pages در Asp.net Core2.0 -------- آموزش ثبت تصویر توسط دوربین در برنامه نویسی اندروید به زبان c#.net -------- حل مساله n وزیر با استفاده از الگوریتم ژنتیک و بصورت گرافیکی -------- آموزش نمایش تصویر loading در سمت client جهت بارگزاری صفحات با حجم زیاد از سرور در asp.net mvc -------- آموزش اعتبار سنجی غیر همزمان(AsyncValidation) با استفاده از جاوااسکریپت در Asp.net mvc -------- آموزش ایجاد breadcrumb با استفاده از sitemap در MVC -------- آموزش ایجاد برنامه چت دوطرفه با استفاده از Socket در سی شارپ -------- آموزش ارسال و دریافت فایل در برنامه تحت شبکه با استفاده ار سوکت (Socket) --------

ابتدای صفحه