菜鸟重新了解C#
2017-05-23 15:56
162 查看
记得最开始学习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不是这么玩的,是先写代码再通过代码生成表~~~..哎,老了。
相关文章推荐
- 高手对菜鸟谈对Java一个全新的了解
- 帮助C#菜鸟进入SQL/XML开发
- [学习笔记]Asp.net(C#)菜鸟进级系列之流程控制
- 重新过一遍ASP.NET 2.0(C#)(5) - Localization(本地化,多语言)
- 帮助C#菜鸟进入SQL/XML开发
- 重新过一遍ASP.NET 2.0(C#)(2) - Themes(主题)(转)
- 了解c#2.0中的Anonymous Methods(匿名方法)
- C#中需要了解的常用模板
- 快速了解c#中的索引器
- 帮助C#菜鸟进入GDI+开发
- 菜鸟之[C#WinForm传值(方法一)(详细代码及注释)]
- 熟悉/了解C#----基础问题
- [学习笔记]Asp.net(C#)菜鸟进级系列之引用类型
- 菜鸟之[C#WinForm传值(方法二)(详细代码及注释)]
- 帮助C#菜鸟进入SQL/XML开发
- 高手对菜鸟谈对Java一个全新的了解
- 快速了解c#中的索引器
- 总体了解C#
- 重新过一遍ASP.NET 2.0(C#)(6) - Membership&RoleManager(成员资格和角色管理)
- 从菜鸟到高手必读:全面了解系统进程