关闭

ASP.NET MVC入门(二)---MVC数据传递

300人阅读 评论(0) 收藏 举报
分类:

先来看一个简单的从Model到View传递数据的例子。

1、Model

       在Models文件夹下新建一个类:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

namespace Demo02_MVC数据传递.Models
{
    public class Man
    {
        public string name { get; set; }
        public int age { get; set; }
        public Man(string NAME, int AGE)
        {
            this.name = NAME;
            this.age = AGE;
        }
    }
}
2、Controller

       在Contrllers文件下新建一个类:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using Demo02_MVC数据传递.Models;

namespace Demo02_MVC数据传递.Controllers
{
    public class TestController : Controller
    {
        public ActionResult Index()
        {
            return View();
        }
        public string sayHello()
        {
            return "Hello GeoStorm!";
        }
        /// <summary>
        /// 用ViewData传递简单对象方法一
        /// </summary>
        /// <returns></returns>
        public ActionResult GetView()
        {
            Man m = new Man("张三",20);
            ViewData["Man"] = m;          //用ViewData进行封装Man对象
            return View("MyView");
        }

        /// <summary>
        /// 用ViewData传递简单对象方法二
        /// </summary>
        /// <returns></returns>
        public ActionResult GetView3()
        {
            Man m = new Man("张三", 20);
            ViewData["Man"] = m;         
            return View("MyView3");//在试图中第一行添加引用代码时,需要两个参数的View。但是两个参数的View不一定在视图中第一页需要添加引用!!!!!!
        }

        /// <summary>
        /// 传递List<Man>集合
        /// </summary>
        /// <returns></returns>
        public ActionResult GetView2()
        {
            List<Man> m = new List<Man>()
            {
                new Man("张三",20),
                new Man("李四",22)
            };
            ViewData["Man"] = m;
            return View("MyView2");
        }
    }
}
3、View

(1)添加第一个View:

       在动作名GetView()上右键→添加视图,命名为MyView,点击确定。


代码修改如下:

@{
    Layout = null;
}

<!DOCTYPE html>

<html>
<head>
    <meta name="viewport" content="width=device-width" />
    <title>MyView</title>
</head>
<body>
    <div>
        @{
            //将ViewData封装强制转换,拆封为类对象
            Demo02_MVC数据传递.Models.Man m = (Demo02_MVC数据传递.Models.Man)ViewData["Man"];
        }
        @m.name
    </div>
</body>
</html>

运行效果:


(2)MyView2

@{
    Layout = null;
}

<!DOCTYPE html>

<html>
<head>
    <meta name="viewport" content="width=device-width" />
    <title>MyView2</title>
</head>
<body>
    <div>
        @{
            List<Demo02_MVC数据传递.Models.Man> L=(List<Demo02_MVC数据传递.Models.Man>)ViewData["Man"];
        }
        @{
            foreach(Demo02_MVC数据传递.Models.Man m in L)
            {
                Response.Write(m.name+"-"+m.age);
            }
        }
    </div>
</body>
</html>

运行效果:


(3)MyView3

@*在试图中第一行添加引用代码时,需要两个参数的View。但是两个参数的View不一定在视图中第一页需要添加引用!!!!!!*@
@model Demo02_MVC数据传递.Models.Man
@{
    Layout = null;
}

<!DOCTYPE html>

<html>
<head>
    <meta name="viewport" content="width=device-width" />
    <title>MyView3</title>
</head>
<body>
    <div>
        @Model.name
    </div>
</body>
</html>

运行效果:







0
0
查看评论

ASP.NET MVC中Controller与View之间的数据传递总结

在ASP.NET MVC中,经常会在Controller与View之间传递数据,因此,熟练、灵活的掌握这两层之间的数据传递方法就非常重要。本文从两个方面进行探讨:? Controller向View传递数据? View向Controller传递数据 一、Cont...
  • sven_xu
  • sven_xu
  • 2015-06-02 09:16
  • 490

零基础学习MVC(一)

完整的ASP.NET MVC架构是基于Microsoft .NET Framework 3.5,另外还使用LINQ。 MODEL是什么? 1. MVC MODEL基本上就是一个C#或者VB.NET的类。 2. MODEL将同时被CONTROLLER和VIEW访问。 3. MO...
  • laodamengxiangfei
  • laodamengxiangfei
  • 2015-12-07 10:38
  • 1420

菜鸟学ASP.NET MVC4入门笔记

ASP.NET MVC 是微软官方提供的以MVC模式为基础的ASP.NET Web应用程序(Web Application)框架,它由Castle的MonoRail而来。 MVC 编程模式 MVC 是三种 ASP.NET 编程模式中的一种。 MVC 是一种使用 MVC(M...
  • lucky51222
  • lucky51222
  • 2016-09-04 11:21
  • 2570

ASP.NET Core MVC 和 Visual Studio入门 (一)安装Visual Studio和.NET Core

ASP.NETCore MVC 和 Visual Studio入门(一) Rick Anderson 原文来自:https://docs.microsoft.com/en-us/aspnet/core/tutorials/first-mvc-app/start-mvc。 本教程将教你使...
  • jhycjhyc
  • jhycjhyc
  • 2017-04-05 09:15
  • 2777

[.Net码农]MVC——入门+最简单的小实例

http://blog.csdn.net/suneqing/article/details/41427037?utm_source=tuicool&utm_medium=referral MVC全名是Model View Controller,是模型(model)-...
  • CrackLibby
  • CrackLibby
  • 2015-11-19 22:22
  • 1154

asp.net mvc 学习总结

自学MVC看这里——全网最全ASP.NET MVC 教程汇总 http://www.cnblogs.com/powertoolsteam/archive/2015/08/13/4667892.html MVC架构已深得人心,微软也不甘落后,推出了Asp.net MVC。小编特意整理博客园乃至整个...
  • bcbobo21cn
  • bcbobo21cn
  • 2017-05-03 21:01
  • 1615

ASP.NET MVC随想录——锋利的KATANA

阅读目录 ASP.NET 发展历程 走进Katana的世界 使用ASP.NET/IIS托管Katana-based应用程序 使用自定义Host(self-host)托管Katana-based应用程序 使用OwinHost.exe托管Katana-based应用程序 几种指定启动...
  • zxxSsdsd
  • zxxSsdsd
  • 2016-08-22 21:28
  • 566

ASP.NET MVC Controller异步机制

ASP.NET MVC异步处理请求的意义 大伙儿都知道,ASP.NET通过线程池处理请求,对于每个请求从线程池中请求一个可用的线程来处理请求,当请求处理完毕之后,线程资源将被归还到线程池。然而,线程池中的线程是互斥资源,当网站在同一时刻的请求量达到一定数量的话,必然会导致这种资源不够耗尽,新来的...
  • niewq
  • niewq
  • 2014-03-04 22:44
  • 11383

ASP.NET MVC3 高级编程学习笔记——入门

最早就接触过asp.net mvc 框架了,从1.0开始到现在的4.0,感觉是时候拥抱mvc了。 本篇主要内容 Model—View—Controller介绍ViewModel模式ASP.NET MVC框架ASP.NET MVC3的新特性 Model—View—Controller介绍 ...
  • langal1212
  • langal1212
  • 2013-09-23 14:02
  • 633

ASP.NET MVC IOC 之AutoFac攻略

-07-28 17:06 by 书洞里的猫, 392 阅读, 6 评论, 收藏, 编辑 一、为什么使用AutoFac? 之前介绍了Unity和Ninject两个IOC容器,但是发现园子里用AutoFac的貌似更为普遍,于是捯饬了...
  • jiangfei009003
  • jiangfei009003
  • 2014-07-29 11:51
  • 1106
    个人资料
    • 访问:860614次
    • 积分:10495
    • 等级:
    • 排名:第1903名
    • 原创:267篇
    • 转载:34篇
    • 译文:1篇
    • 评论:121条
    博客专栏
    Python

    文章:0篇

    阅读:0
    最新评论