EF POCO (自定义实体类) 创建过程

来源:互联网 发布:知无涯者 拉马努金传 编辑:程序博客网 时间:2024/05/16 23:37

     1 建表

CREATE TABLE [dbo].[TEST](    [v1] [int] IDENTITY(1,1) NOT NULL,    [v2] [varbinary](50) NOT NULL,    [v3] [datetime] NOT NULL, CONSTRAINT [PK_TEST] PRIMARY KEY CLUSTERED(    [v1] ASC)WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]) ON [PRIMARY]

      2 edmx创建







3 . 建立实体类,和映射对应实体类(本例采用ObjectContext方式)

1.) 实体类     TEST.cs

            实体类的名字一定要和edmx的实体类名字对应

            实体类的属性要与Edmx中属性对应,包括属性是否为空等

namespace WebApplication3{    public partial class TEST    {        public int v1 { get; set; }        public string v2 { get; set; }        public  Nullable<DateTime> v3 { get; set; }    }    public partial class TESTEntities : ObjectContext    {        public ObjectSet<TEST> TEST        {            get { return _test ?? (_test = CreateObjectSet<TEST>("TESTs")); }        }        private ObjectSet<TEST> _test;    }}


2). 映射实体类TESTEntities.cs

     对应Webconfig中connectstring的名字         

<add name="TESTEntities" connectionString="metadata=res://*/test.csdl|res://*/test.ssdl|res://*/test.msl;provider=System.Data.SqlClient;provider connection string="Data Source=JACKIE-PC\SQLSERVER2008;Initial Catalog=TEST;User ID=sa;Password=Fabric2010;MultipleActiveResultSets=True"" providerName="System.Data.EntityClient" />

namespace WebApplication3
{
    public partial class TESTEntities : ObjectContext
    {
        public const string ConnectionString = "name=TESTEntities";
        public const string ContainerName = "TESTEntities";

        #region Constructors

        public TESTEntities()
            : base(ConnectionString, ContainerName)
        {
        }
        #endregion
    }
}

4. 映射关系完成,我们可以使用自己定义的实体类了,POCO创建完毕

     protected void Page_Load(object sender, EventArgs e)
        {
            using (TESTEntities db = new TESTEntities())
            {
                var ctt = db.TEST.ToList();
                this.gdvTest.DataSource = ctt;
                this.gdvTest.DataBind();
            }
        }


完整实例下载地址:

http://download.csdn.net/detail/newegg2009/4362265