.NET MVC4+EF环境构建

使用 VS2012 + SQLServer 2008
采用 MVC4.0架构,数据库通过EF进行搭建。
通过在网上下载的例子,进行修改,得到自己的一些经验。。。

1、EF
EF的好处就是能够 Code First(个人理解,就是常规的方式是先在数据库中建立表项,然后进行数据库连接,数据处理操作)。但是例子里面没有提到如果通过EF自动创建数据库以及数据库中的表
其实上:
EF已经能够处理大部分常规数据操作,EF的架构基本上如下:
 
namespace Entity
{
    [Description("学生管理")]
    [PrimaryKey("ID")]
    public class BaseStudent : BaseEntity
    {
        /// 
        /// 学生主键
        /// 
        [Key]
        [DisplayName("学生主键")]
        public int StuID { get; set; }

        /// 
        /// 学生姓名
        /// 
        [DisplayName("姓名")]
        public string StuName { get; set; }

        /// 
        /// 性别
        /// 
        [DisplayName("性别")]
        public bool Sex { get; set; }
        //#region 扩展操作
        ///// 
        ///// 新增调用
        ///// 
        //public override void Create()
        //{
        //    this.ID = int.Parse(ManageProvider.Provider.Current().UserId);
        //    this.StuName = ManageProvider.Provider.Current().UserName;
        //    this.Sex = ManageProvider.Provider.Current().IsSystem;
        //}
        ///// 
        ///// 编辑调用
        ///// 
        ///// 
        //public override void Modify(string KeyValue)
        //{
        //    this.ModuleId = KeyValue;
        //    this.ModifyDate = DateTime.Now;
        //    this.ModifyUserId = ManageProvider.Provider.Current().UserId;
        //    this.ModifyUserName = ManageProvider.Provider.Current().UserName;
        //}
       // #endregion
    //}

    }


BaseEntity是基类,包含有Create Modify的虚方法。实际上,网上的例子 对于 Entity类,只需要指明 Key属性,这个属性的命名空间是 using System.ComponentModel.DataAnnotations;引用之后还需要在
.net类库中添加类库,否则会报找不到 Key属性的错误。。

2.需要一个继承 dbcontext的类,这个类底层通过linq能将数据库的操作实现, 比如
   
 public class DataContext : DbContext
    {
        public DataContext()
            : base("LeaRunFramework_SqlServer") //连接字符串
        {

        }
        public DataContext(string connectstring)
            : base(connectstring) //连接字符串
        {

        }
        public DbSet Base_Student { get; set; }


    }


LeaRunFramework_SqlServer是在Web.config文件中定义的sqlstring。。 一般是将 所有实体加入,比如 Base_Student 等

重点说一下 如何 让Entity自动生成数据库文件
            DataContext context = new DataContext("Server=.;Initial Catalog=Test;User ID=sa;Password=123");
            context.Base_Student.Create();
            context.SaveChanges();


调用如上方法就能创建数据库,创建表...记得一定要 SaveChanges才能提交更改、


同样的使用 Context能够进行对象的查询
   BaseStudent stu = context.Base_Student.Find(1);根据主键进行查询






你可能感兴趣的:(环境配置)