一个控制器中,功能最终会落实到一个个Action中实现,最常见的是增删查改操作。这些Action是一个个的方法,一般返回值是ActionResult,并且是public 方法,可以带参数,可以添加元标记,可以结合linq直接访问数据库,可以结合Model进行合法性验证等等,还是比较灵活的。增就是添加记录,如添加一个域名,一个产品;删,就是删除一条记录;查,包含列表显示及单个记录的显示;改就是指的修改记录。

1 最常见的Action当属增删查改功能

2 其中Index是列表,在示例中即列出所有的域名,这里进行了简单处理,即把所有域名全部显示不出来,不排序,不分页,不筛选;以后我们会介绍如果筛选和分页;一个Action,可以使用View()方法,返回一个视图,并且可以带上一个或多个参数,在这里就是把所有域名包装成List进行返回,以供视图列表显示

3 这个是详情页Action,通过id找到相应的记录,判断不为空则返回到视图

4 这个是添加一个域名的两个Action,第一个是Get请求,另一个是Post请求;提交时,传入了一个Model,这里面有完整的数据,通过Add()方法,添加到数据库。

5 这个是修改域名的方法,首先通过id查询出相应实体,然后传入到视图,修改完毕后,视图提交过来,进行保存;保存前需要把状态设置成EntityState.Modified,告诉linq这个是修改操作,与上面的添加相区别,然后是db.SaveChanges()方法的调用,可以直接持久化,保存到数据库中。

6 最后就删除了,也是一样,有一个get请求,再有一个post请求,其中get请求要展示相应的信息,并充当确认页面,当提交后,才真正删除,调用Remove()方法。

7 Action的常见成员就介绍到这里,祝您学习愉快!

 

本人原创,转载请注明出处。更佳视觉排版请移步:http://t.cn/RPCZOVI

走入asp.net mvc不归路:[4]说说Action有哪些常见成员的更多相关文章

  1. 走入asp.net mvc不归路:[6]linq常见用法

    asp.net mvc结合linq,先不说性能问题,对于增删查改的操作还是相当方便的.以下我们就来介绍一下linq在asp.net mvc的Controller中的常见用法. 1 首先来看看整个数据表 ...

  2. 走入asp.net mvc不归路:[5]Action的返回

    asp.net mvc提供了多种返回方式,一方面使得视图可以重用,另一方面灵活强大,有直接返回视图,返回Json,返回文件流,返回到相同Controller的Action,返回到另一个Controll ...

  3. 走入asp.net mvc不归路:[3]创建控制器

    实际上,控制器就是一个类,一个继承自Controller的类.正常创建一个Controller即可,而问题在于asp.net mvc提供了一套便捷的方法,在创建一个Controller时,可以自动创建 ...

  4. 走入asp.net mvc不归路:[2]控制器概览

    asp.net mvc中最灵活的地方就是控制器,这里可以验证数据,可以跳转视图,还可以访问数据库等等.所以,我们要先从这里说起. 1 控制器就是继承了Controller的类,一般来说,类名后面都会增 ...

  5. 走入asp.net mvc不归路:[1]项目文件结构

    先来了解一下一个asp.net mvc项目的文件结构. 1 项目文件结构一览 2 mvc,顾名思义,一个项目中最重要的就是这三个东西:M(Model,模型),V(View,视图),C(Controll ...

  6. ASP.NET MVC 5使用Filter过滤Action参数防止sql注入,让你代码安全简洁

    在开发程序的过程中,稍微不注意就会隐含有sql注入的危险.今天我就来说下,ASP.NET mvc 5使用Filter过滤Action参数防止sql注入,让你代码安全简洁.不用每下地方对参数的值都进行检 ...

  7. [转]ASP.NET MVC中的两个Action之间值的传递--TempData

    本文转自:ASP.NET MVC中的两个Action之间值的传递--TempData 一. ASP.NET MVC中的TempData 在ASP.NET MVC框架的ControllerBase中存在 ...

  8. ASP.NET MVC中的两个Action之间值的传递--TempData

    一. ASP.NET MVC中的TempData 在ASP.NET MVC框架的ControllerBase中存在一个叫做TempData的Property,它的类型为TempDataDictiona ...

  9. ASP.NET mvc下在Controller下action的跳转方式

    在ASP.NET mvc下,action有多种挑战方式: return RedirectToAction("Index");//一个参数时在本Controller下 如果Redir ...

随机推荐

  1. inode结构体

    inode分为内存中的inode和文件系统中的inode,为了避免混淆,我们称前者为VFS inode, 而后者以EXT2为代表,我们称为Ext2 inod.这里说明的是VFS inode. 重要成员 ...

  2. LeetCode(121) Best Time to Buy and Sell Stock

    题目 Say you have an array for which the ith element is the price of a given stock on day i. If you we ...

  3. 降维算法-PCA主成分分析

    1.PCA算法介绍主成分分析(Principal Components Analysis),简称PCA,是一种数据降维技术,用于数据预处理.一般我们获取的原始数据维度都很高,比如1000个特征,在这1 ...

  4. 解决php7.3 configure: error: off_t undefined

    //解决该问题:php7.3 configure: error: off_t undefined; check your library configuration # 添加搜索路径到配置文件echo ...

  5. Django中的tags,母版和继承,组件,静态文件相关,自定义simpletag和自定义inclusion_tag

    Tags for <ul> {% for user in user_list %} <li>{{ user.name }}</li> {% endfor %} &l ...

  6. 自己项目使用了ARC,项目中使用第三方库继续引用ARC

    Objective-C引入ARC(Automatic Reference Counting)后,我们经常会面对这样一种困境:自己的项目使用了ARC,却发现要使用的第三方类库是non-ARC的:又或者自 ...

  7. GT使用说明

    GT文档:https://gt.qq.com/docs.html GT Android版的详细使用手册: https://gt.qq.com/docs/a/GTAndroidUserGuide.pdf

  8. x86保护模式-六 控制转移

    控制转移可以分为两大类  :同一任务内的控制转移    和   任务间的控制转移(任务切换) 同一个任务内的控制转移可以分为段内转移 .特权级不变的段间转移和特权级改变的段间转移 段内转移与实模式相同 ...

  9. CodeForces contest/776 A+B+C题解

    ICM Technex 2017 and Codeforces Round #400 (Div. 1 +Div.2,combined) A. A Serial Killer 谜一样的题意:每天从两个人 ...

  10. Oracle 查看 使用 UNDO 段的事务脚本

    查看oracle undo segment段的信息: SELECT T1.USN, T2.NAME, T1.STATUS, T1.LATCH, T1.EXTENTS, T1.WRAPS, T1.EXT ...