版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/stu_20052369/article/details/87936402
1. VS(visual studio)里获取LINQ to SQL模板
工具---获取工具和功能---单个组件---LINQ to SQL Class
2. 创建一个项目(以控制台程序为例)
3.添加linq to sql classes
4. 打开server explorer,建立数据库连接,并将表拖到dbml文件中,结果如下图
5. 在dbml文件的空白处,右键选择属性,填写Context namespace 和 Entity namespace。
到此,项目和数据库的连接已经建立完成,下面是如何使用的部分。
6. 查
一般查询:
using (LinqDemo1DataContext dc = new LinqDemo1DataContext())
{
var result = from a in dc.Country_Lists
where a.IntVersionID >= 4
select a;
foreach (var st in result)
{
Console.WriteLine("country name:" + st.Str40CountryName);
Console.WriteLine("RegionID:" + st.IntRegionID);
Console.WriteLine("CountryID:" + st.IntCountryID);
Console.WriteLine("VersionID:" + st.IntVersionID);
}
}
SELECT TOP 5:
using (LinqDemo1DataContext dc = new LinqDemo1DataContext())
{
//SELECT TOP 5
var result = (from a in dc.Study_Infos
orderby a.ID descending
select a).Skip(0).Take(5);
foreach (var item in result)
{
Console.WriteLine("StudyNo: " + item.StudyNo);
Console.WriteLine("Sponsor:" + item.Sponsor);
}
}
分页查询:
using (LinqDemo1DataContext dc = new LinqDemo1DataContext())
{
//SELECT TOP 5
var result = (from a in dc.Study_Infos
orderby a.ID descending
select a).Skip(1*5).Take(5);
foreach (var item in result)
{
Console.WriteLine("StudyNo: " + item.StudyNo);
Console.WriteLine("Sponsor:" + item.Sponsor);
}
}
7 增
//insert
using (LinqDemo1DataContext dc = new LinqDemo1DataContext())
{
TableTest item = new TableTest {ID=0, Name = "Jamie1" };
//dc 上下文环境, TableTests 创建linq to sql 时由数据库拖拽过来的表格
dc.TableTests.InsertOnSubmit(item);
dc.SubmitChanges();
}
批量添加
//Insert
using (LinqDemo1DataContext db = new LinqDemo1DataContext())
{
var list = new List<TableTest> {
new TableTest {ID=3, Name = "Jamie2" },
new TableTest {ID=5, Name = "Jamie5" },
new TableTest {ID=8, Name = "Jamie8" }
};
//dc 上下文环境, TableTests 创建linq to sql 时由数据库拖拽过来的表格
db.TableTests.InsertAllOnSubmit(list);
db.SubmitChanges();
}
8 改
// Update
using (LinqDemo1DataContext dc = new LinqDemo1DataContext())
{
var list = dc.TableTests.Where(c => c.Name =="Jamie1");
TableTest item = dc.TableTests.Where(c => c.Name == "Jamie1").First();
item.Name = "GAO JAMIE";
dc.SubmitChanges();
}
9 删
// Delete
using (LinqDemo1DataContext dc = new LinqDemo1DataContext())
{
var list = dc.TableTests.Where(c => c.Name == "Jamie1");
dc.TableTests.DeleteAllOnSubmit(list);
//TableTest country = dc.TableTests.Where(c => c.Name == "Jamie1").First();
//dc.TableTests.DeleteOnSubmit(country);
dc.SubmitChanges();
}
10. Cannot perform Create, Update or Delete operations on Table(Employee) because it has no primary key