创建一个基本mvc项目

1.向Models目录下添加一个类文件MyModel.cs文件,代码如下:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web; namespace MvcDynamicTest.Models
{
public class MyModel
{
public string TestString { get; set; }
}
}

2.添加Home控制器,代码如下:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using MvcDynamicTest.Models;
using System.Dynamic; namespace MvcDynamicTest.Controllers
{
public class HomeController : Controller
{
//
// GET: /Home/ public ActionResult Index()
{
return View(new MyModel()
{
TestString = "This is a test string"
}
);
}
public ActionResult UsingExpando()
{
dynamic vm = new ExpandoObject();
vm.Name = "张三";
vm.Sex = true;
vm.Age = ;
vm.Math = 58.45;
return View(vm);
} }
}

3.增加Index Action对应的视图文件Index.cshtml,代码如下:

@{
ViewBag.Title = "Index";
} <h2>@Model.TestString</h2>

4.增加UsingExpando Action对应的视图文件UsingExpando.cshtml,代码如下:

@{
ViewBag.Title = "UsingExpando";
}
<h2>第1种方法输出:</h2><hr />
<p>@Model.Name<br />
@Model.Sex<br />
@Model.Age<br />
@Model.Math</p>
<br />
<h2>第2种方法输出:</h2><hr /><p>
@foreach (var fieldItem in (IDictionary<String, Object>)Model)
{
  @fieldItem.Key<span>:</span>@fieldItem.Value<br />
}
</p>
<br />
<h2>第3种方法输出:</h2><hr /><p>
@foreach (var f in Model)
{
   @f.Key<span>:</span>@f.Value<br />
}</p>
<br />
<h2>第4种方法输出:</h2><hr /><p>
@foreach (var f in Model)
{
   @f<br />
}</p>

5.最终效果图:


参考博客:

https://www.cnblogs.com/xuejianxiyang/p/4964739.html

在Mvc中,ExpandoObjec类的使用的更多相关文章

  1. Spring MVC中一般类使用service

    在Spring MVC中,Controller中使用service只需使用注解@Resource就行,但是一般类(即不使用@Controller注解的类)要用到service时,可用如下方法: 1.S ...

  2. asp.net mvc中匿名类dynamic

    dynamic info = new { name="aa", sex=“男”, age= }; //返回Model为info在前台中model.name报错,因为匿名类型默认访问 ...

  3. MVC中modelstate的使用

    MVC中ModelState类需要引用 System.Web.Mvc命名空间,在 System.Web.Mvc.dll 中. 属性 Errors 返回一个 ModelErrorCollection 对 ...

  4. 第四节:MVC中AOP思想的体现(四种过滤器)并结合项目案例说明过滤器的实际用法

    一. 简介 MVC中的过滤器可以说是MVC框架中的一种灵魂所在,它是MVC框架中AOP思想的具体体现,所以它以面向切面的形式无侵入式的作用于代码的业务逻辑,与业务逻辑代码分离,一经推出,广受开发者的喜 ...

  5. MVC中关于Membership类跟数据库的问题

    Membership它们用的是ASPNETDB这个数据库,但我们可以使用我们自定义的数据库,然而除非我们自定义的数据库有着跟这个ASPNETDB一样的模式,否则ASP.NET提供的默认的SqlMemb ...

  6. MVC中使用HTML Helper类扩展HTML控件

    文章摘自:http://www.cnblogs.com/zhangziqiu/archive/2009/03/18/1415005.html MVC在view页面,经常需要用到很多封装好的HTML控件 ...

  7. MVC Controller 基类中的Request

    今天在测试自己MVC程序的时候发现之前写代码的一个BUG,需求是每个页面要获取当前URL链接中包含的城市ID,我把获取url的方法写到了Controller的基类BaseController(Base ...

  8. Spring MVC中一般 普通类调用service

    在Spring MVC中,Controller中使用service只需使用注解@Resource就行,但是一般类(即不使用@Controller注解的类)要用到service时,可用如下方法: 1.S ...

  9. mvc中动态给一个Model类的属性设置验证

    原文:mvc中动态给一个Model类的属性设置验证 在mvc中有自带的验证机制,比如如果某个字段的类型是数字或者日期,那么用户在输入汉字或者英文字符时,那么编译器会自动验证并提示用户格式不正确,不过这 ...

随机推荐

  1. 实验吧CTF题库-安全杂项

    XDCTF misc200: 题目提示: 下载文件 用foremost分离文件 接下来用archpr 4.53进行明文攻击 先把00002700.zip中的readme.txt提取出来压缩成zip文件 ...

  2. sql server小知识

    SELECT TOP 10000 * FROM [LogFeedback].[dbo].[ahwater_perf_monitor] order by timestramp desc   降序 asc ...

  3. spring MVC 异常处理整理

    一.异常结构 1.异常由外到内如下: web服务器处理异常--->web应用里面web.xml处理异常--->Spring框架处理异常---->控制器注释处理异常--->控制器 ...

  4. ios中的三种弹框《转》

    目前为止,已经知道3种IOS弹框: 1.系统弹框-底部弹框 UIActionSheet  (1)用法:处理用户非常危险的操作,比如注销系统等 (2)举例: UIActionSheet *sheet = ...

  5. 配置镜像yum源--解决RHN not available的问题

    由于RHN服务是收费的,在安装redhat系统时,自带的yum可能不能使用.中国有很多好用的镜像源,我们可以把yum源更改到国内镜像源上,步骤如下: 一.卸载本地yum #rpm –qa|grep y ...

  6. oracle系统函数(日期函数)

    oracle系统函数(日期函数) 调用日期函数时,首先要明确两个概念,时间戳和日期是不同的,日期中包括年月日但不包括小时分钟秒,时间戳包括年月日小时分钟秒.在oracle中,一般情况下,函数中包含da ...

  7. __clone()方法

    <?php class NbaPlayer{ public $name; } $james = new NbaPlayer(); $james->name = 'James'; echo ...

  8. JavaPersistenceWithMyBatis3笔记-第2章Bootstrapping MyBatis-001XMl形式和Java形式

    一. 1.Mapper 同上 <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE mapper ...

  9. Help Bubu UVALive - 4490

    传送门 题目大意 有n本书,最多k次操作,每次操作可以把一本书拿出来,放到一个位置去,有一个指标较mess度,他是书的高度的段数,连续的书高度一样算一段,现在给你最先开始各个位置上的书的高度,求操作后 ...

  10. Luogu 4281 [AHOI2008]紧急集合 / 聚会

    BZOJ 1832 写起来很放松的题. 首先发现三个点在树上一共只有$3$种形态,大概长这样: 这种情况下显然走到三个点的$lca$最优. 这种情况下走到中间那个点最优. 这种情况下走到$2$最优. ...