asp.net mvc 4 高级编程学习笔记:第四章 模型

数据模型

数据模型及O/R转化,采用EntityFramework实现。

可以采用firstCode模型,首先定义模型,通过模型生成数据库,也可以通过安装EFPowerTools,通过数据库自动生成对应的数据模型(习惯使用此种方式)。

构造基架

构造基架就是提供了数据维护的模板,可以自动完成数据的增改删除等相关的基础代码,通过修改基础代码,就可以快速的完成基本的数据维护。

使用基架模板,首先需要选择一个模型类,在选择访问数据库所用的上下文类。

模型绑定

在进行数据维护时,表单和数据模型之间是双向的绑定关系,提交时,会自动将模型的属性赋值(隐式模型绑定)。

也可以在后台方法中,通过调用UpdateModel(album)来进行显式模型绑定,如果绑定有问题会抛出异常,如果没有异常,则可以继续操作,代码如下:

try

{

  UpdateModel(album);

  数据操作

}

catch(Exception ex)

{

  错误处理,重新渲染视图

}

也可以通过如下的方式

TryUpdateModel(album);

if(ModelState.IsValid)

{

  数据操作

}

else

{

  错误处理,重新渲染视图

}

对于数据维护程序,建议通过AJAXFrom方式(见第八章AJAX)。

时间: 2024-10-12 16:14:38

asp.net mvc 4 高级编程学习笔记:第四章 模型的相关文章

asp.net mvc 4 高级编程学习笔记:第三章 视图(2)

页面布局 asp.net MVC中提供了布局的支持,默认情况下才布局文件保存到 /View/Shared/目录下的_Layout.cshtml,View目录有个_ViewStart.cshtml文件,里边的代码 @{ Layout = "~/Views/Shared/_Layout.cshtml"; } 指明了此目录下的默认布局文件是谁.可以将此代码添加到具体的View文件中来修改套用的模板页. 可以将_ViewStart.cshtml文件创建到某个子目录中,用来设定此目录中所有视图的

asp.net mvc 4 高级编程学习笔记:第三章 视图

1.基础规则 视图的职责是向用户提供用户界面. 视图位于View目录下:有普通的需要控制器渲染的视图,有局部视图,有布局视图等各种视图. 2.视图渲染 控制器默认情况下渲染与控制器同名的目录内的与Action同名的视图,也可以在Action中,通过return view(“视图名”)来指定需要渲染的其他视图,如果视图位于同一个目录内,采用视图名称即可,如果视图位于不同的目录内,需要提供服务端根路径“~/view/Example/index.cshtml”. 3.强类型视图与数据传递 控制器中通过

UNIX环境高级编程学习笔记(第一章UNIX基础知识)

总所周知,UNIX环境高级编程是一本很经典的书,之前我粗略的看了一遍,感觉理解得不够深入. 听说写博客可以提高自己的水平,因此趁着这个机会我想把它重新看一遍,并把每一章的笔记写在博客里面. 我学习的时候使用的平台是Windows+VMware+debian,使用secureCRT来连接(可以实现多个终端连接). 因为第一章是本书大概的描述,所以第一章的我打算写得详细一点,而且书本的原话占的比例会比较多,重点的东西会用粗体显示出来. 1.1  引言 所有操作系统都为他们所运行的程序提供服务.典型的

Unix环境高级编程学习笔记(四):进程环境

1 exit函数与_Exit函数 #include<stdlib.h> void exit(int status) void _Exit(int status) 这两个函数的不同之处在于exit函数先执行清理工作后再进入内核(清理I/O缓冲),_Exit函数直接进入内核 2 atexit函数,登记函数,在exit的时候执行 int atexit(void (* func) (void)); 被登记的函数称为终止处理函数,这些函数的调用顺序与登记顺序相反,如果一个函数被登记多次,也会被调用多次

JavaScript高级程序设计学习笔记第四章--变量、作用域和内存问题

1.变量可能包含两种不同数据类型的值:基本类型值和引用类型值. 基本类型值指的是简单的数据段,而引用类型值指那些可能由多个值构成的对象. 2.变量复制 如果从一个变量向另一个变量复制基本类型的值,会在变量对象上创建一个新值,然后把该值复制到为新变量分配的位置上,两个变量可以参与任何操作而不会相互影响. 当从一个变量向另一个变量复制引用类型的值时,同样也会将存储在变量对象中的值复制一份放到为新变量分配的空间中.不同的是,这个值的副本实际上是一个指针,而这个指针指向存储在堆中的一个对象.复制操作结束

“AS3.0高级动画编程”学习:第四章 寻路(AStar/A星/A*)算法 (上)

“AS3.0高级动画编程”学习:第四章 寻路(AStar/A星/A*)算法 (上) 原作者:菩提树下的杨过出处:http://yjmyzz.cnblogs.com 一提到“A*算法”,可能很多人都有"如雷贯耳"的感觉.用最白话的语言来讲:把游戏中的某个角色放在一个网格环境中,并给定一个目标点和一些障碍物,如何让角色快速“绕过障碍物”找出通往目标点的路径.(如下图) 在寻路过程中,角色总是不停从一个格子移动到另一个相邻的格子,如果单纯从距离上讲,移动到与自身斜对角的格子走的距离要长一些,

最大熵学习笔记(四)模型求解

  生活中我们经常听到人们说"不要把鸡蛋放到一个篮子里",这样可以降低风险.深究一下,这是为什么呢?其实,这里边包含了所谓的最大熵原理(The Maximum Entropy Principle).本文为一则读书笔记,将对最大熵原理以及由此导出的最大熵模型进行介绍,重点给出其中所涉及数学公式的理解和详细推导. 相关链接 最大熵学习笔记(零)目录和引言 最大熵学习笔记(一)预备知识 最大熵学习笔记(二)最大熵原理 最大熵学习笔记(三)最大熵模型 最大熵学习笔记(四)模型求解 最大熵学习笔

Asp.net MVC4高级编程学习笔记-模型学习第五课MVC表单和HTML辅助方法20171101

MVC表单和HTML辅助方法 一.表单的使用. 表单中的action与method特性.Action表示表单要提交往那里,因此这里就有一个URL.这个URL可以是相对或绝对地址.表单默认的method属性值是get,如果看到表单没有写method属性那就是表示method是get方式提交.另外一种就是post方式. 当使用HTTP Get请求时,浏览器会提取表单中元素的name特性值及相应的value特性值放到查询字符串中.如:http://localhost?search?id=1 如果不想把

《ASP.NET MVC 4 实战》学习笔记 12:结束与总结

本篇是<ASP.NET MVC 4 实战>这本书学习笔记的最后一篇,最后还是没有坚持将全书的内容学习下来... 其实后面还讲了许多内容:AutoMapper.区域.NHibernate.测试.部署等,但是我基本都搞不懂了. 当时选这本书作教材就是因为偏向实践,可越往后越偏向于理论,很多知识点没有实例也搞不懂在讲什么. 原因有三:1.学习能力不强:2.心情有点急躁:3.不知是原文就这样还是翻译的原因,很多地方的表述很奇怪,不知道到底想表达什么. 因为没有坚持下来,心情很不美丽,不过这段时间的学习