一个控制器中,功能最终会落实到一个个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. Knockout v3.4.0 中文版教程-6-计算监控-可写的计算监控

    2.可写的计算监控 初学者可能想要跳过本节 - 可写的计算监控是相当高级的部分,在大多数情况下不是必需的. 通常,计算监控是一个通过其他监控值计算出的值,因此是只读的. 令人惊讶的是,可以使计算监控值 ...

  2. luogu3809 后缀排序 后缀数组

    ref and 挑战程序设计竞赛. 主要是发现自己以前写得代码太难看而且忘光了,而且我字符串死活学不会啊,kmp这种东西我都觉得是省选+难度啊QAQ #include <iostream> ...

  3. luogu2604 [ZJOI2010]网络扩容

    先做一遍普通的dinic 然后再更改源点为超级源,超级源向原源加一条capacity=k && cost=0的边,再加上有费用的边跑最小费用最大流 #include <iostr ...

  4. STM32F407 I2C 个人笔记

    源代码;https://github.com/YuQiao0303/STM32F407-Examples/tree/master/24.IIC 概述 I2C (IIC, Inter-Integrate ...

  5. 分析Tapjoy的模式—分发用于ios设备的企业级应用程序

    下面简单介绍下Tapjoy的模式,供大家参考: Tapjoy最初的合作模式:“按安装奖励”(pay-per-install) Tapjoy利用非常成功的奖励性下载模式影响了App Store的免费游戏 ...

  6. iOS学习笔记17-FMDB

    上一节我已经介绍了SQLite的简单使用,不了解的可以提前去看一下iOS学习笔记16-数据库SQLite,这节我们来讲下FMDB. 一.FMDB介绍 FMDB是一种第三方的开源库,FMDB就是对SQL ...

  7. [luoguP1415] 拆分数列(DP)

    传送门 t(i,j)表示下标从i到j的数 d[i]表示以i结尾的最小的数的下标 d[i]=max(j) (1<=j<=i && t(d[j-1],j-1)<t(j,i ...

  8. PHP文件上传类(页面和调用部分)

    <!--upform.html内容--> <form action="upload.php" method="post" enctype=&q ...

  9. android源码mk文件里的TARGET_OUT指向哪里?

    android源码核心变量大都在build/core/envsetup.mk中建立 在该文件中,可以找到 TARGET_OUT := $(PRODUCT_OUT)/$(TARGET_COPY_OUT_ ...

  10. laravel 数据库配置

    数据库配置文件为项目根目录下的config/database.php //默认数据库为mysql 'default' => env('DB_CONNECTION', 'mysql'), 'mys ...