// NorthwindDataContext 是 DataContext 派生类, 用于连接数据库与实体
NorthwindDataContext n = new NorthwindDataContext(
@"Data Source=.;Initial Catalog=Northwind;Integrated Security=True");
// 操作 Orders 数据表
var s = from n1 in n.Orders
where n1.OrderID % 10 == 0
select new
{
ID = n1.OrderID,
Name = n1.ShipName
};
foreach (var s1 in s)
{
Console.Write(s1.ID);
Console.Write(" | ");
Console.Write(s1.Name);
Console.WriteLine();
}

Console.ReadKey();

/**//*
10300 | Magazzini Alimentari Riuniti
10400 | Eastern Connection
10500 | La maison d'Asie
10600 | Hungry Coyote Import Store
10700 | Save-a-lot Markets
10800 | Seven Seas Imports
10900 | Wellington Importadora
11000 | Rattlesnake Canyon Grocery
*/
NorthwindDataContext n = new NorthwindDataContext(
@"Data Source=.;Initial Catalog=Northwind;Integrated Security=True");
// 建立对Region表的LINQ查询
var Regions = from n1 in n.Region
select n1;
// 向Region插入数据
Region r = new Region();
r.RegionID = 999;
r.RegionDescription = "test";
n.Region.InsertOnSubmit(r); // 添加记录到
n.SubmitChanges(); // 通知数据库更改记录
// 开始查询,延迟执行
foreach (var Region in Regions)
{
Console.Write(Region.RegionID);
Console.Write(" | ");
Console.Write(Region.RegionDescription);
Console.WriteLine();
} 
Console.ReadKey();

/**//*
1 | Eastern
2 | Western
3 | Northern
4 | Southern
999 | test
*/
CREATE TABLE [Table]
(
ID int NOT NULL IDENTITY (1, 1) PRIMARY KEY,
Value varchar(50) NULL
)
// 把数据库中ID等于10记录的值修改为"null"
static void Main()
{
TestDBDataContext TestDB = new TestDBDataContext(@"路径"DBTest.mdf");
var L = from v in TestDB.Table
where v.ID == 10
select v;
foreach (var I in L)
{
I.Value = "null"; //修改值
}
TestDB.SubmitChanges(); // 向数据库提交刷新
foreach (var I in L) // 显示修改后的值
{
Console.WriteLine(I.Value);
}
Console.ReadKey();
}
// 把数据库中value为"null"的记录删除
static void Main()
{
TestDBDataContext TestDB = new TestDBDataContext(@"路径"DBTest.mdf");
var L = from v in TestDB.Table
where v.Value == "null"
select v;

foreach (var I in L)
{
TestDB.Table.DeleteOnSubmit(I); // 删除记录
}
TestDB.SubmitChanges(); // 向数据库提交刷新

Console.ReadKey();
}
ALTER PROCEDURE insertToTable
@value varchar(50)
AS
insert into [Table] (value) values (@value)
RETURN
[Function(Name="dbo.insertToTable")]
public int insertToTable([Parameter(DbType="VarChar(50)")] string value)
{
IExecuteResult result = this.ExecuteMethodCall(this, ((MethodInfo)(MethodInfo.GetCurrentMethod())), value);
return ((int)(result.ReturnValue));
}
static void Main()
{
TestDBDataContext TestDB = new TestDBDataContext(@"路径"DBTest.mdf");
TestDB.insertToTable("AppTest"); // 使用InsertToTable存储过程为"Table"表添加一行记录
}
最新相关文章
发表评论