Junior
LINQ ning qanday turlari mavjud?
sobes.tech AI
AIdan javob
Asosiy uchta turdagi LINQ mavjud:
- Ob'ektlarga LINQ: Xotirada kolleksiyalarga (IEnumerable<T>, List<T>, Array va boshqalar) so'rovlar.
- XMLga LINQ: XML ma'lumotlariga so'rovlar (XDocument, XElement va boshqalar).
// XMLga LINQ misoli XDocument doc = XDocument.Load("data.xml"); var elements = from item in doc.Descendants("item") where (int)item.Attribute("id") > 10 select new { Id = (int)item.Attribute("id"), Name = (string)item.Element("name") }; - ADO.NETga LINQ: Ma'lumotlar bazalarida saqlangan ma'lumotlarga so'rovlar. Quyidagilarni o'z ichiga oladi:
- LINQ to SQL: Microsoft SQL Server bazalariga so'rovlar.
// LINQ to SQL misoli // DataContext va DbSet<Product> mavjud deb faraz qilamiz var products = from p in dbContext.Products where p.Price > 50 select p; - Entitiesga LINQ: Entity Frameworkning bir qismi, EF tomonidan qo'llab-quvvatlanadigan har qanday ma'lumotlar bazasiga so'rovlar.
// Entity Framework Core bilan LINQ misoli // DbContext va DbSet<Order> mavjud deb faraz qilamiz var orders = from o in dbContext.Orders where o.OrderDate.Year == 2023 orderby o.TotalAmount descending select o; - DataSetga LINQ:
DataSetvaDataTableob'ektlariga so'rovlar.// DataSetga LINQ misoli // DataSet ds va DataTable dt mavjud deb faraz qilamiz var rows = from row in dt.AsEnumerable() where row.Field<int>("Quantity") > 0 select new { ProductId = row.Field<int>("ProductId"), Quantity = row.Field<int>("Quantity") };
- LINQ to SQL: Microsoft SQL Server bazalariga so'rovlar.