随笔分类 -  EF5 + mvc4

摘要:@Html.Partial,@Html.RenderPartial 这两者的共同点都是在视图中去调用另外一个视图,区别是 Html.Partial 有返回值 ( MvcHtmlString ),使用的时候 可以用一个变量存储这个返回值,或者使用 @直接进行输出. 而Html.RenderPartial 的返回值是 Void ,他的内部会自动帮我们 Response输出内容,... 阅读全文
posted @ 2014-08-07 19:18 梨花驿路 阅读(336) 评论(0) 推荐(0) 编辑
摘要:我们在 EF 的编程中,有时候会遇到这样一个错误: 但是,按照他的提示 “See 'EntityValidationErrors' property for more details.” 去 Exception 中查看,却只能看到 并不能看到具体的是那个属性为什么验证不通过,也许不少人都遇到这种情况。 这里给大家介绍一个Exception类,让我们能够轻松的知道具体的哪一个字段出了什... 阅读全文
posted @ 2014-07-31 15:13 梨花驿路 阅读(522) 评论(0) 推荐(0) 编辑
摘要:转自 : http://www.nmtree.net/2014/05/04/entityframework-nested-query.html 这样的双where的语句应该怎么写呢: var test=MyList.Where(a => a.Flows.Where(b => b.CurrentUser == “”) 下面我就说说这个问题,想想有几种方法。先来做一下准备工作,我们使用最简... 阅读全文
posted @ 2014-07-31 10:04 梨花驿路 阅读(1462) 评论(0) 推荐(0) 编辑
摘要:数据有一个字段,用的是 tinyint 长度是1 默认值为0 , 当用vs2013中的 EF5来生成 实体模型之后,看到这个列被标识为 bool 类型 Mysql官方参考文档关于布尔类型的说明: BOOL, BOOLEAN These types are synonyms(同义词) for TINYINT(1). A value of zero is conside... 阅读全文
posted @ 2014-07-30 15:46 梨花驿路 阅读(3156) 评论(0) 推荐(0) 编辑
摘要:结论: ViewData 适用于 在一次请求中 传递数据 . 比如我们从 主Action 到 主视图, 然后在 主视图中 用 RenderAction 请求子Action的时候,就是算作 一次请求. 场景,我们在 主页面中,有一个 login登陆模块, 我们判断,如果 用户是登陆的,那么就显示 账号密码, 如果用户没有登陆, 则显示 登陆框 先来看看 我们的代码先运行 /home/... 阅读全文
posted @ 2014-07-26 09:46 梨花驿路 阅读(4057) 评论(0) 推荐(1) 编辑
摘要:一: 执行sql语句,返回受影响的行数 在mysql里面,如果没有影响,那么返回行数为 -1 ,sqlserver 里面 还没有测试过 using (var ctx = new MyDbContext()){ ctx.Database.ExecuteSqlCommand("UPDATE Person SET Name = 'Michael' WHERE PersonID = 1... 阅读全文
posted @ 2014-07-25 19:02 梨花驿路 阅读(15428) 评论(0) 推荐(3) 编辑
摘要:简单的说,就是 ViewBag 和 ViewData 是数据共享的(他们都是共享 ViewData 的数据),ViewBag 实际就是对 ViewData的一个操作的封装. 区别 : ViewBag 是 动态类型的,那么前台在调用的时候,能直接推断出你是什么类型. 而 ViewData存放的是 Object,那么前台视图调用的时候,要先转一下类型. 我们在后台,分别写了个ViewD... 阅读全文
posted @ 2014-07-24 21:34 梨花驿路 阅读(642) 评论(0) 推荐(0) 编辑
摘要:当客户端请求 /Product/Index的时候, 如果在视图的根目录下有 _ViewStart.Cshtml 就会先执行这个,再去执行 Product文件夹下的Index视图, 如果Product文件夹下也有 _ViewStart.Cshtml文件,那么优先执行这个文件,再去执行 Index视图 根目录下的ViewStart中的数据,可以通过 Page.Title这样 或者是 PageData... 阅读全文
posted @ 2014-07-24 17:35 梨花驿路 阅读(3394) 评论(0) 推荐(4) 编辑
摘要:一:主视图中使用Html.RenderPartial来调用子视图(注意,这里是直接调用子视图,而没有去调用子Action ) 在没有使用母版页的主视图中(也就是设置了layout为null的视图中),使用 Html.RenderPartial 可以调用分部视图(只调用视图,不调用action),并且使用 ViewData 来从主Action里面传值到主视图,或者是分布视图 最后生成的ht... 阅读全文
posted @ 2014-07-24 15:52 梨花驿路 阅读(1642) 评论(0) 推荐(2) 编辑
摘要:一:Razor视图引擎的核心原理 Razor是ASP.NET MVC 3中新加入的技术,以作为ASPX引擎的一个新的替代项 ,他是一个视图引擎 他的核心原理,就是当读取到 @符号的时候,就认为这是开始c#代码,并且 会自动寻找 { } 作为开始和结束.但是当他不管在任何地方碰到 和 的时候,就不会当做是c#代码,而是当做html代码,我们会看到,在真正生成的 视图类代码里面 xx 会直接... 阅读全文
posted @ 2014-07-22 09:14 梨花驿路 阅读(1938) 评论(0) 推荐(0) 编辑
摘要:我们在MVC的代码中,经常会看到这样的一个 代码 可能有人会有疑问,既然我定义的是ActionResult,为什么返回值会是View方法呢? 其实这个View方法的返回值的类型是ActionResult的子类ViewResult 我们查看MVC源码可以看到 ActionResult是个抽象类, ActionResult 有多个派生类(子类),有的子类又有子类 (例如 View... 阅读全文
posted @ 2014-07-21 17:16 梨花驿路 阅读(1583) 评论(0) 推荐(1) 编辑
摘要:一:后台使用SelectListItem 传值给前台显示Select下拉框 我们先来看数据库的订单表,里面有3条订单,他们的用户id对应了 UserInfo用户表的数据,现在我们要做的是添加一个Order控制器,显示订单列表,并且在修改订单的时候,把用户的id 用 select 下拉框显示出来,并且可以提交修改数据 1.1 我们通过比较原始的方法,来把数据 传递到前台后,前台使用 ... 阅读全文
posted @ 2014-07-21 11:19 梨花驿路 阅读(4392) 评论(0) 推荐(0) 编辑
摘要:1:项目结构 2:每层添加对其他层的引用,这里我们把除了Web层之外的所有的层生成的文件都放到解决方案下的Library文件夹下,然后每个项目分别来引用里面的dll项目文件. 我们在Model项目上,右键属性->生成-> 在下面的输出里面,选择上一级的 Library文件夹 2.2 我们调整项目的生成顺序 ,在解决方案或者是任意项目上右键,选择 生成依赖项,调整各个项目的依赖,这样的目的就... 阅读全文
posted @ 2014-07-17 18:05 梨花驿路 阅读(1225) 评论(0) 推荐(0) 编辑
摘要:我们还是以订单表为例 1:系统推荐的方法,先查询出来,然后调用remove方法进行删除 我们删除id大于等于4的 static void Main(string[] args) { Delete(o => o.Id >= 4); //这里的参数是个 lambda 表达式 } public static void... 阅读全文
posted @ 2014-07-08 09:54 梨花驿路 阅读(546) 评论(0) 推荐(0) 编辑
摘要:因为 Internet Explorer 和 Firefox 发送了不同的 Accept 头,所以 web API 在响应里就发送了不同的内容类型。 解决方法,在 Global.asax的 Application_Start() 加入下面的代码 GlobalConfiguration.Configuration.Formatters.XmlFormatter.SupportedMedia... 阅读全文
posted @ 2014-07-07 17:04 梨花驿路 阅读(652) 评论(0) 推荐(0) 编辑
摘要:try{ ...}catch (Exception e) { //在webapi中要想抛出异常必须这样抛出,否则之抛出一个默认500的异常 var resp = new HttpResponseMessage(HttpStatusCode.InternalServerError) { Content = new StringContent(e.ToStr... 阅读全文
posted @ 2014-07-06 17:56 梨花驿路 阅读(1008) 评论(0) 推荐(0) 编辑
摘要:情景:用户表和订单表是一对多的关系,即 一个 Userinfo 对应对应有 多个 Order表 如果我在EF中,先创建一个用户,然后创建3个订单,然后关联这1个用户和3个订单的关系,毫无问题. 但是:当我如果想创建2个用户,6个订单,并且分别去关联的时候,就提示报错 无法确定“XXX”关系的主体端。添加的多个实体可能主键相同 原因可能是: 当我们添加2个用户的时候,2个用... 阅读全文
posted @ 2014-06-24 13:47 梨花驿路 阅读(2295) 评论(0) 推荐(0) 编辑