ably ably برای هدایت شدن به سایت جدید اینجا کلیک کنید

آموزش برنامه نویسی

آموزش برنامه نویسی وب، اندروید، ویندوز , اسکیوال و...
Tell: 0912 097 5516
| Email: Hello@EduOnline.ir

۸ مطلب با کلمه‌ی کلیدی «lambda» ثبت شده است

تغییر خروجی یک دستور کوئری در لینک

بسم الله الرحمن الرحیم

آموزش select new در LINQ

در بسیاری از کوئری های LINQ ما نیاز خواهیم داشت، تا نتیجه ی کوئری را به کلاس دیگری Bind کنیم برای این کار مثالی را در این جا بررسی خواهیم کرد.

بر روی یک Table کوئریی را می خواهیم اجرا کنیم، در این کوئری فقط فیلدهای Id , Name را لازم خواهیم داشت، این دو فیلد را باید تبدیل به یک کلاس دیگر کنیم.

برای اینکار کد ما به صورت زیر خواهد بود:


class ProjectInfo
{
   public string Name {get; set; }
   public long Id {get; set; }
}

public List<ProjectInfo> GetProjectForCombo()
{
    using (MyDataContext db = new MyDataContext (DBHelper.GetConnectionString()))
    {
        var query = from pro in db.Projects
                    select new ProjectInfo(){ Name = pro.ProjectName, Id = pro.ProjectId };

        return query.ToList();
    }
}

ادامه مطلب...

دستور Any

بسم الله الرحمن الرحیم

دستور Any

با استفاده از دستور Any شما می توانید وجود یک شی را در یک لیستی از اشیا بررسی کنید.

یک مثال ساده از این دستور به صورت زیر است

class Pet
            {
                public string Name { get; set; }
                public int Age { get; set; }
                public bool Vaccinated { get; set; }
            }

            public static void AnyEx3()
            {
                // Create an array of Pets.
                Pet[] pets =
                    { new Pet { Name="Barley", Age=8, Vaccinated=true },
                      new Pet { Name="Boots", Age=4, Vaccinated=false },
                      new Pet { Name="Whiskers", Age=1, Vaccinated=false } };

                // Determine whether any pets over age 1 are also unvaccinated.
                bool unvaccinated =
                    pets.Any(p => p.Age > 1 && p.Vaccinated == false);

                Console.WriteLine(
                    "There {0} unvaccinated animals over age one.",
                    unvaccinated ? "are" : "are not any");
            }

            // This code produces the following output:
            //
            //  There are unvaccinated animals over age one. 


ادامه مطلب...

تفاوت دستور Select با SelectMany در LINQ

بسم الله الرحمن الرحیم

تفاوت دستور Select  با SelectMany در LINQ

می توانید مقاله آموزش Linq به زبان فارسی را از این قسمت مشاهده کنید.

دو عملگر Select  و SelectMany عملگر های projection هستند. عملگر Select  برای انتخاب مقادیر از یک مجموعه است اما عملگر SelectMany برای انتخاب مقادیر یک مجموعه از مجموعه دیگر است.
اپراتور یا عملگر Select یک مقدار را به عنوان خروجی به شما می دهد در صورتی که SelectMany یک خروجی شامل مقادیری مرتبط به یکدیگر را به شما ارائه می دهد.
عملا، عملگر SelectMany یک IEnumerable<IEnumerable<T>>  در IEnumrable<T>  ایجاد می کند. اینطور می توان گفت که، یک لیست که خود این لیست هر عنصرش یک لیست است را از یک مجموعه ایجاد می کند.

ادامه مطلب...

کوئری با تاخیر

بسم الله الرحمن الرحیم

 

آموزش لینک

در بخش های آموزش Linq در مورد کوئری های با تاخیر به صورت مختصر صحبت شد اما برای درک بهتر نیاز دیدم تا یک مثال را بررسی کنیم تا در صورتی که مطلب کاملا روشن نشده است در اینجا به طور کامل مشخص گردد.

این مثال در نظر بگیرید:

int[] price = new int{6500,5000,7800,9000,4800}; 
var  result=  price.Order().Take(3);
price[5]=999999;
foreach(var p in result)
{
               Console.WriteLine(p);
}

ادامه مطلب...

آموزش Linq (بخش هشتم)

بسم الله الرحمن الرحیم

 

مشاهده تمامی آموزش های دوره LINQ

آموزش LINQ

بخش هشتم

LINQ

در این بخش تگ های تبدیل لینک را آموزش خواهم داد

Conversion Operators

cast

عناصر مجموعه را به یک نوع مشخص تبدیل می کند

ArrayList list = new ArrayList { 1, 3, 2, 3, 1, 8, 13 };
IEnumerable<int> query = list.Cast<int>();

foreach (int i in query)
  Console.WriteLine(i);

//output
//1
//3
//2
//3
//3
//1
//8
//13

ادامه مطلب...

آموزش Linq (بخش هفتم)

بسم الله الرحمن الرحیم

 

مشاهده تمامی آموزش های دوره LINQ

آموزش LINQ

بخش هفتم

LINQ

در این بخش تگ های اتصال لینک را آموزش خواهم داد

Join operators

join

برای متصل کردن دو شی یه یکدیگر از متد join استفاده می کنیم. مثال:

var query = from c in customers join o in orders on c.CustomerID equals o.CustomerID
select new {FullName = c.Name + " " +
c.Family ,
c.CustomerID ,
o.OrderDate ,
TotalOrder = o.Total
};

ادامه مطلب...

آموزش Lambda

بسم الله الرحمن الرحیم

 

بسم الله الرحمن الرحیم

 

مشاهده تمامی آموزش های دوره LINQ

آموزش LINQ

در این بخش قصد دارم به معرفی عبارات لامبدا بپردازم انشالله که مفید واقع گردد.

 

در حالت عادی ما یک تابع را به صورت زیر تعریف می کنیم


public void Load(object parameter)
{

    .....

}

 

این تابع دارای بخش های زیر است:

  • میدان دید تابع public
  • خروجی تابع void
  • نام تابع load
  • پارامتر ورودی تابع parameter
  • بدنه تابع

 

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

  • پارامترها
  • بدنه تابع


(int x) => x + 1;

ادامه مطلب...

آموزش Linq (بخش اول)

بسم الله الرحمن الرحیم

 

مشاهده تمامی آموزش های دوره LINQ

آموزش LINQ

بخش اول

LINQ

در این بخش قصد دارم به معرفی LINQ بپردازم و آن را به صورت مختصر و درحین حال کامل آموزش دهم

همان طور که می دانید شما برای گرفتن کوئری و به عبارتی پرس و جو بر روی منبع های مختلف مثل XML,SQL و ... نیاز به آموزش زبان های مختلف دارید که مشکل بسیار بزرگی است راه حل ارائه گردیده استفاده از زبانی است که از همه این منبع ها پشتیبانی نماید. لینک در  VS2008 و .Net 3.5 ارائه گردید و linq مخفف عبارت Language Integrated Query است.

برای تئوری همین کافی است.

لطفا از این پس LINQ  را لینک تلفظ نمایید.

در اجرای دستورات لینک سه بخش مورد استفاده است:

  • منبع داده
  • پرس و جو
  • اجرا

مثال:


int[] numbers = new int[7] { 0, 1, 2, 3, 4, 5, 6 };
var numQuery = from num in numbers where (num % (0 == 2 select num;

foreach (int num in numQuery)
{
Console.Write("{0,1} ", num);
}

ادامه مطلب...
up
ما را در گوگل محبوب کنید