记得最开始学习C#的时候,framework还是2.0 ... 现在心血来潮看到最新的C# MVC5+EF6 就尝试的搭了一下。
按照其它前辈的方式一步一步也算,正常搭建并能显示数据了。
期间遇到的问题,就是直接写的linq竟然查不出来数据...
丢人丢大了。
列表
var register = from s in db.CrazyRegisterUsers
where s.cruId < 500
select s;
根据ID排序
register = register.OrderBy(x => x.cruId);
代码片断:
public class CrazyRegisterContent : DbContext
{
static CrazyRegisterContent()
{
Database.SetInitializer<CrazyRegisterContent>(null);
}
//CrazyRegisterContent:DefaultConnection
public CrazyRegisterContent() : base("CrazyRegisterContent") { }
public DbSet<CrazyRegisterUser> CrazyRegisterUsers { get; set; }
}
}
但是用以下方式,竟然可以查出来数据,百思不得其姐 :)
//数据库上下文操作对象
CrazyRegisterContent db = new CrazyRegisterContent();
List<CrazyRegisterUser> list1 = db.Database.SqlQuery<CrazyRegisterUser>("SELECT CRU_ID as cruId,CRU_EMAIL as cruEmail,CRU_NAME as cruName,CRU_PASSWORD as cruPassword,CRU_FLAG as cruFlag,CRU_UPDATEDATE as cruUpdateDate,CRU_CREATEDATE as cruCreateDate FROM CRAZY_REGISTER_USER WHERE CRU_ID<100 ").ToList();
// db.Database.ExecuteSqlCommand("UPDATE CRAZY_REGISTER_USER SET CRU_UPDATEDATE=GETDATE() ");
ViewData["DataList"] = list1;
最后查了各种资料终于发现,是实体类映射的问题 ...
资料如下:Entity Framework Code First关系映射约定
http://www.cnblogs.com/libingql/p/3353112.html
改进后的,这个是个人手动映射写法,有自动生成的不用自己写(:
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using System.Linq;
using System.Web;
namespace crazyhearted.Models
{
[Table("Crazy_Register_User", Schema = "dbo")]
public class CrazyRegisterUser
{
//实体类
[Key]
[Column("cru_id")]
public int cruId { get; set; }
[Column("cru_email")]
public string cruEmail { get; set; }
[Column("cru_Name")]
public string cruName { get; set; }
[Column("cru_Password")]
public string cruPassword { get; set; }
[Column("cru_Flag")]
public string cruFlag { get; set; }
[Column("cru_UPDATEDATE")]
public DateTime cruUpdateDate { get; set; }
[Column("cru_CREATEDATE")]
public DateTime cruCreateDate { get; set; }
}
}
习惯了JAVA的开发模式先创建的表,再生成的实体类,突然有点不习惯了。
后来发现别人EF不是这么玩的,是先写代码再通过代码生成表~~~..哎,老了。
菜鸟重新了解C#
最新推荐文章于 2023-06-19 12:57:04 发布