Консультация LINQ с рамками 3.0 и 3.5 сети многоточия
С выдвижением технологий и базы данных было большой возможностью для того чтобы retrieve данные более быстро и с меньше тяготой на программировать перегородку.
Оно было явно что следующая большая возможность в программируя технологии должна уменьшить сложность достигая и интегрируя информации родн не определена использующ технологию OO. 2 общедоступными источниками данных по non-OO будут реляционными базами данных и XML.
Главное преимущество Microsoft? проект s LINQ общий подход, котор они принимали потому что они интегрировали языка запросов базы данных irrespective of любая специфически часть. Query интегрированный языком можно использовать с XML, базой данных или что-нибыдь которая способна возвращающ IENUMERABLE.
Здесь малая консультация может объясняющ. Это специально для моих читателей любят сделать к porgamming.
Это будет snippet я нашел в doc самом может выразить силу LINQ и сделать программники сети многоточия реально усмехнуться.
использование системы; использование System.Query;
использование System.Collections.Generic;
тип app {
основа static пустая () {
зашнуруйте [] называет = {? Burke? ? Connor? ? Франк? ? Everett? ? Альберт? ? Джордж? ? Harris? ? Дэвид? };Expr IEnumerable = от s в именах
где (== 5 orderby s s.Length)
выберите s.ToUpper ();
foreach (деталь шнура в expr)
Console.WriteLine (деталь);}
}
Как Linq работает с XML?
Extensibility зодчества query использован в проекте самом LINQ для предусмотрения вставк работают и над данными по XML и SQL.
Xpath и Xquery использовано тяжело находятся в языке программирования хозяина. Здесь снова snippet Кодего для показывать как легко оно должно работать с LINQX (да свое вызванное для XML? s)
Стандартная дорога сделана следующим образом:
XmlDocument doc = новое XmlDocument ();
Имя XmlElement = doc.CreateElement (» имя»);
name.InnerText = «Патрик Hines»;
XmlElement phone1 = doc.CreateElement (» телефон»);
phone1.SetAttribute (» тип», «домашнее»);
XmlElement phone2 = doc.CreateElement (» телефон»);
phone2.SetAttribute (» тип», «работа»);
XmlElement street1 = doc.CreateElement (» ″ street1);
Город XmlElement = doc.CreateElement (» город»);
city.InnerText = «остров Mercer»;
Положение XmlElement = doc.CreateElement (» положение»);
state.InnerText = «WA»;
XmlElement почтовое = doc.CreateElement (» почтово»);
postal.InnerText = «″ 68042;
Адрес XmlElement = doc.CreateElement (» адрес»);
address.AppendChild (street1);
address.AppendChild (город);
address.AppendChild (положение);
address.AppendChild (почтовое);
Контакт XmlElement = doc.CreateElement (» контакт»);
contact.AppendChild (имя);
contact.AppendChild (phone1);
contact.AppendChild (phone2);
contact.AppendChild (адрес);
XmlElement контактирует = doc.CreateElement (» контакты»);
contacts.AppendChild (контакт);
doc.AppendChild (контакты);
If we see it little closer the above code , This style of coding provides few clues to the structure of the XML tree. but with LINQX it becomes more of what they as functional construct.Here is what how u code the same with LINQX?.
XElement contacts = new XElement
(”contacts”,new XElement(”contact”,
new XElement(”name”, “Patrick Hines”),
new XElement(”phone”, “206-555-0144″,
new XAttribute(”type”, “home”))
,new XElement(”phone”, “425-555-0145″,new XAttribute(”type”, “work”)),
new XElement(”address”,new XElement(”street1″, “123 Main t”),
new XElement(”city”, “Mercer Island”),
new XElement(”state”, “WA”),new XElement(”postal”,”6843″)
This is so simple no hassles at all.
How LINQ works with database
Yup its done By Microsoft again under LINQD(thats LINQ for database). The query operators over relational data (DLinq) build on the integration of SQL-based schema definitions into the CLR type system.
This integration provides strong typing over relational data while retaining the expressive power of the relational model and the performance of query evaluation directly in the underlying store.
What we kneed to know is the structure of database table we want to deal with it and create a class exactly having private variables as columns of the underlying table say may be like save that easy.Thus in simple way we create an object of the row of that table in memory and do operation on that and ask somebody to save it.Moreover we can ask for a collection of those rows fo get more than one record and do a query on it..isnt that great no hassles of database sql.
1. Create an entity class with mapping to database table like this:-
[Table(Name="Customers")]
public class Customer
{
[Column (Id=true)]
public string CustomerID;
private string _City;
[Column(Storage = "_City")]
public string City
{
get { return this._City; }
set { this._City = value; }}}
2.Create a Data context to load from database
static void Main(string[] args){
// Use a standard connection string
DataContext db = new DataContext(
@?C:Program FilesLINQ PreviewDatanorthwnd.mdf?);
// Get a typed table to run queries
Table Customers = db.GetTable();
3.Query what you get?.
// Attach the log showing generated SQL to console
// This is only for debugging / understanding the working of DLinq
db.Log = Console.Out;
// Query for customers in London
var custs =
from c in Customers
where c.City == “London”
select c;
}
Thats how it works with database?.easy isn’t it?This Technology will come with DotNet Framework 3.0 and with C#3.0 and VB 9. I havent covered every thing but just a quick glance which can get grasping things faster. If you want to read more on it see the Microsoft?s LINQ Project
Related : Linq provider for Twitter API
Tags: dot-net-framework3, Microsoft, msdn
![]() | ![]() | ![]() | ![]() | ![]() | ![]() | ![]() |
![]() | ![]() | ![]() | ![]() | ![]() | ![]() | ![]() |
![]() | ![]() | ![]() | ![]() | ![]() | ![]() | ![]() |
Posted on 21st May 2007 by Ashish Mohta , A tech blogger who writes about solving day to day problems of people who use computer. He also writes on How to use the applications like Office, PC tips, Online tools,Browsers and more. All posts by Ashish Mohta | Connect with me @ Twitter | Linkedin | Facebook | Stumble | Need more help? Ask your Questions at our Support Center


































I don’t understand….you write on how to use tools in office, when one of the most basic (spellchecker) obviously went unused in this report. Thumbs way down to you Hashish. Way down.
Hi Oliver, Why dont you enlighten all of us reading this with your devine knowledge on this subject ?
Regards
ASHISH ( without start H in Hashish )
heavily — heavily
explaing — explain
lil ??? — little
fo — to
hassels — hassels
isint — isn’t
Frameowrk - Framework
Here is a free tip for you — Tools > Spelling and Grammar…
@Stjepan and Oliver : Thanks for pointing it out. I guess I still get scolded for my older posts but thanks. I had made the corrections
Hello, Ashish, thanks for the post. As for Stjepan lol he still spelt Hassles wrong. So sad. Enjoy. Keep up the good work
Thanks Tisso!!
Leave your response!
Subscribe for Daily Updates
Free Feed Subscription
Weekly Podcast
Monthly Archives
Topics
What others are Saying ?