程序运行结果如下:
2.手动建立实体类
实体类在多数情况下可以通过LINQ to SQL类设计器建立,当然动手建立一个简单的实体类也不是难事,并且可以更好的学习LINQ to SQL的对象模型。数据库依然是前面的示例数据库。
在项目中添加一个类GuestInfoEntity.cs,如下:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data.Linq.Mapping;
namespace DataContexDemo
{
/// <summary>
/// 手动建立实体类
/// </summary>
[Table(Name="tb_GuestInfo")]
class GuestInfoEntity
{
[Column(IsPrimaryKey=true,DbType="Int NOT NULL IDENTITY",IsDbGenerated=true,Name="Id")]
public int ID { get; set; }
[Column(DbType = "nvarchar(20)", Name = "Name")]
public string Name{get;set;}
[Column(DbType = "int", Name = "Age")]
public int Age { get; set; }
[Column(DbType = "nvarchar(20)", Name = "Tel")]
public string Tel { get; set; }
}
}
编写示例代码,注意需要引入System.Data.Linq.dll:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data.Linq;//关注
namespace DataContexDemo
{
class Program
{
static void Main(string[] args)
{
//2.手动建立实体类
//
//连接字符串
string constring = @"Data Source=.SQLEXPRESS;AttachDbFilename=E:Visual Studio 2010LINQ_to_SQLLINQ_To_SQL自定义数据库和实体类Database1.mdf;Integrated Security=True;User Instance=True";
DataContext dc = new DataContext(constring);
Table<GuestInfoEntity> tb = dc.GetTable<GuestInfoEntity>();
var query = tb.AsEnumerable();
foreach (var q in query)
{
Console.WriteLine("{0} {1} {2} {3}",q.ID,q.Name,q.Age,q.Tel );
}
Console.ReadKey();
}
}
}
程序运行如下:











