1、使用ViewBag

         #region 0.2 Action方法 + ActionResult Index2()
/// <summary>
/// Action方法
/// </summary>
/// <returns></returns>
public ActionResult Index2()
{
System.Text.StringBuilder sbhtml = new System.Text.StringBuilder();
List<Models.dog> list = InitData();
list.ForEach(d =>
{
sbhtml.AppendLine("<div>" + d.ToString() + "</div>");
}); ViewBag.HtmlStr = sbhtml.ToString(); return View();
}
#endregion

Index2.cshtml

@{
Layout = null;
} <!DOCTYPE html> <html>
<head>
<meta name="viewport" content="width=device-width" />
<title>Index</title>
</head>
<body>
@Html.Raw(ViewBag.HtmlStr) </body>
</html>

2、使用ViewData

         #region 0.3 查询文章列表 + ActionResult Index3()
/// <summary>
/// 查询 文章 列表
/// </summary>
/// <returns></returns>
OumindBlogEntities db = new OumindBlogEntities(); public ActionResult Index3()
{
List<Models.BlogArticle> list = (from d in db.BlogArticles where d.AIsDel == false select d).ToList(); ViewData["DataList"] = list;
return View();
}
#endregion

Index3.cshtml

@using MvcLewisTest.Models;
@{
Layout = null;
} <!DOCTYPE html> <html>
<head>
<meta name="viewport" content="width=device-width" />
<title>Index</title>
<style type="text/css">
#tbList
{
border:1px solid #0094ff;
border-collapse:collapse;
margin:10px auto;
width:800px;
}
#tbList th,td
{
border:1px solid #0094ff;
padding:10px;
}
</style>
<script type="text/javascript">
function del(Aid) {
if (confirm("确定要删除吗?"))
window.location = "/Home/Del/" + Aid;
}
</script>
</head>
<body>
<table id="tbList">
<tr>
<th>id</th>
<th>标题</th>
<th>分类</th>
<th>状态</th>
<th>时间</th>
<th>操作</th>
</tr>
@foreach (BlogArticle a in ViewData["DataList"] as List<BlogArticle>)
{
<tr>
<td>@a.AId</td>
<td>@a.ATitle</td>
<td>@a.BlogArticleCate.Name</td>
<td>@a.Enumeration.e_cname</td>
<td>@a.AAddtime</td>
<td>
<a href="javascript:del(@a.AId)">删</a>
<a href="/Home/Modify/@a.AId">改</a>
</td>
</tr>
}
</table>
</body>
</html>

3、使用Control器的 return View()

         #region 0.5 显示要修改数据(根据Id) +  ActionResult Modify(int id)
[HttpGet]
/// <summary>
/// 显示要修改的数据
/// </summary>
/// <param name="id"></param>
/// <returns></returns>
public ActionResult Modify(int id)
{
//1.根据id查询出要修改的对象
BlogArticle art = (from a in db.BlogArticles where a.AId == id select a).FirstOrDefault();
//2.生产文章分类下来框
IEnumerable<SelectListItem> listItem = (from c in db.BlogArticleCates
where c.IsDel == false select c).ToList()
.Select(c => new SelectListItem { Value = c.Id.ToString(), Text = c.Name });
//3.将生成的文章分类 下拉框集合 设置给ViewBag
ViewBag.CateList = listItem;
//4.加载视图,使用View构造函数,将数据传给视图上Model属性
return View(art);
}
#endregion

MVC的传递数据的方法的更多相关文章

  1. 在Activity之间如何传递数据,请尽可能说出你所知道的传递数据的方法,并详细描述其实现过程。

    在Activity之间如何传递数据,请尽可能说出你所知道的传递数据的方法,并详细描述其实现过程. 答案:可以通过Intent对象.静态变量.剪切板和全局对象进行数据传递,具体的数据传递方法如下. 1. ...

  2. Android 开发中使用Intent传递数据的方法

    Activity之间通过Intent传递值,支持基本数据类型和String对象及 它们的数组对象byte.byte[].char.char[].boolean.boolean[].short.shor ...

  3. Intent传递数据的方法

    一.传递List 1.传递List<String>的方法 ArrayList<String> info = new ArrayList<String>(); inf ...

  4. 在javaweb中从servlet端向jsp端传递数据的方法

    1.servlet端: request.setAttribute("student", student)://向请求域中添加名称为student,内容为student中内容的数据( ...

  5. Java多线程初学者指南(7):向线程传递数据的三种方法

    在传统的同步开发模式下,当我们调用一个函数时,通过这个函数的参数将数据传入,并通过这个函数的返回值来返回最终的计算结果.但在多线程的异步开发模式下,数据的传递和返回和同步开发模式有很大的区别.由于线程 ...

  6. react在router中传递数据的2种方法

    概述 不传递数据叫什么单页面应用,渲染模块还需要http请求算什么单页面应用. 本文总结了react-router4中使用BrowserRouter时传递数据的两种方法,供以后开发参考,相信对其他人也 ...

  7. 安卓通过putExtra传递数据的几种方式

    通过intent传递数据时,使用以下代码报错: hMap<string, object=""> map=(Map<string, object="&qu ...

  8. 在不同Activity之间传递数据的四种常用方法

    在Android中传递数据的方法非常多,本次介绍4中比较常用的数据传递方法: 1.通过Intent传递数据 2.通过静态变量(static)传递数据 3.通过剪贴板(Clipboard)传递数据 4. ...

  9. 四大组件之Activity——组件间传递数据的4种常用方法

    在Android中传递数据的方法非常多,本次介绍4中比较常用的数据传递方法: 通过Intent/Bundle传递数据 通过静态变量(static)传递数据:需构建跳转页面相应静态变量http://bl ...

随机推荐

  1. [转] Android OkHttp完全解析 是时候来了解OkHttp了

    http://blog.csdn.net/lmj623565791/article/details/47911083: 本文出自:[张鸿洋的博客] 一.概述 最近在群里听到各种讨论okhttp的话题, ...

  2. const修饰指针

    关于const修饰指针的情况,一般分为如下4种情况: ; const int *a =&b; //情况1 int const *a =&b; //情况2 int* const a =& ...

  3. 【转】 SIFT算法详解

    尺度不变特征变换匹配算法详解Scale Invariant Feature Transform(SIFT)Just For Fun zdd  zddmail@gmail.com 对于初学者,从Davi ...

  4. jq--回到顶部

    <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...

  5. JavaWeb基础: 学习大纲

    JavaWeb基础: Web应用和Web服务器 JavaWeb基础: Tomcat JavaWeb基础:HTTP协议和基于Restful的架构 JavaWeb基础: Web工程配置文件 JavaWeb ...

  6. OLE填充EXCEL

    先把基本的FORM写好: 1.行列属性 FORM row_column USING p_r p_width p_type. CASE p_type. WHEN 'R'. "行高 = p_r ...

  7. 分享一个快速的Json(反)序列化开源项目 Jil

    我们不缺少JSON的序列化库,但我们缺少一个性能非常好的库,这对于网站来说非常重要.今天我发现了Jil. 他是开源的代码: https://github.com/kevin-montrose/Jil ...

  8. SerialPort使用

    1.简介随 着USB的流行,串口通讯已经应用到日常生活的很多方面了,USB是一种高速的串口通讯协议,USB接口非常复杂,通常被用在需要传输大量数据数据的地 方,如U盘.相机.打印机等.除了USB这种较 ...

  9. 大作业关于(“有爱”youi)的简介

    我们团队一共四个人,我们足够了解对方的优缺点,能够很好的进行交流沟通.对于一些问题也能有好的方法去解决,我做事情比较讲究高效和尽可能的完美,或者说要做到我自己觉得完美,才会停下来.对于一件事情,我有自 ...

  10. [转]BeginInvoke和EndInvoke方法浅析

    开发语言:C#3.0   IDE:Visual Studio 2008   一.C#线程概述   在操作系统中一个进程至少要包含一个线程,然后,在某些时候需要在同一个进程中同时执行多项任务,或是为了提 ...