一、Model层

 using System;
using System.Collections.Generic;
using System.Linq;
using System.Web; namespace Mvc_Demo.Models
{
public class Person
{
public int Age { get; set; }
public string Name { get; set; }
public string Sex { get; set; }
}
}

二、控制器层

 using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using Mvc_Demo.Models; namespace Mvc_Demo.Controllers
{
public class PersonController : Controller
{
//==================自定义方式的自动装配方法=========================
// GET: /Person/
//1、通过默认的get请求方式,执行这个行为,请求到AddPerson这个view页面,其才会展示出来
[HttpGet]//默认请求方式
public ActionResult AddPerson()
{
return View();
}
//2、在AddPerson这个view页面输入值以后,点击提交,因为指定了他们的提交方式为post方式,
//故提交以后,会执行此行为,然后显示AddPerson1页面,将数据进行展示出来
[HttpPost]
public ActionResult AddPerson(Person person)
{
ViewData.Model = person;
return View("AddPerson1");
}
//===============================单个值的自定义装配============================
[HttpPost]
public ActionResult Purple(string dd)
{
ViewBag.DD = dd;
return View("Purple");
}
}
}

三、视图(View)

1.处理视图

 @*引入命名空间*@
@using Mvc_Demo.Controllers;
@using Mvc_Demo.Models;
@model Mvc_Demo.Models.Person @{
ViewBag.Title = "AddPerson";
}
@* ========================自定义方式的自动装配================================= *@
<h2>AddPerson</h2>
@using (Html.BeginForm("AddPerson", "Person", FormMethod.Post))
{
<span>年龄:</span>
@Html.TextBoxFor(p=>p.Age)
<hr />
<span>姓名:</span>
@Html.TextBoxFor(p=>p.Name)
<hr />
<span>性别:</span>
@Html.TextBoxFor(p=>p.Sex)
<hr />
<input type="submit" name="Submit" value="提交" />
}
@* ========================单个值的自动装配================================ *@
@using (Html.BeginForm("Purple", "Person", FormMethod.Post))
{
@Html.TextBox("dd")
<input type="submit" name="name" value="提交哈" />
}
@* ===========================跳转链接============================== *@
@*链接跳转失败*@
<a href="@Url.Action("Purple", "Person")">跳转到AddPerson1页面</a>
<hr />
@Html.ActionLink("跳转到AddPerson1页面", "AddPerson1", "Person")
<hr />
@* ====================在指定位置输出值===================================== *@
@*在指定位置输出值*@
@Html.Raw("我是HTML帮助类方式输出")
@*在页面最顶端输出值*@
@{
Response.Write("我是Response方式输出");
}

2.显示视图(1)

 @using Mvc_Demo.Controllers;
@model Mvc_Demo.Models.Person @{
ViewBag.Title = "AddPerson1";
}
@* ========================自定义方式的自动装配================================= *@
<h2>AddPerson1</h2>
<span>年龄:</span>
<h1>@Model.Age</h1>
<hr />
<span>姓名:</span>
<h1>@Model.Name</h1>
<hr />
<span>性别:</span>
<h1>@Model.Sex</h1>
<hr /> @*当路由是通过动态规则方式动态生成时,通过这种方式会动态生成路径*@
@Html.ActionLink("跳转到AddPerson页面", "AddPerson", "Person")

3.显示视图(2)

 @model Mvc_Demo.Models.Person

 @{
ViewBag.Title = "Purple";
} <h2>Purple</h2>
@* ========================单个值的自动装配================================ *@
@{
//string str=Convert.ToString(@ViewBag.DD);
@*@Html.TextArea(str)*@
@ViewBag.DD
}

Asp.Net MVC之 自动装配、动态路径(链接)等的更多相关文章

  1. Asp.net MVC Razor视图模版动态渲染PDF,Razor模版生成静态Html

    Asp.net MVC Razor视图模版动态渲染PDF,Razor模版生成静态Html 1.前言 上一篇文章我开源了轮子,Asp.net Core 3.1 Razor视图模版动态渲染PDF,然后,很 ...

  2. ASP.NET MVC 文件上传和路径处理

    ASP.NET MVC 文件上传和路径处理总结 目录 文件的上传和路径处理必须解决下面列出的实际问题: 1.重复文件处理 2.单独文件上传 3.编辑器中文件上传 4.处理文章中的图片路径 5.处理上传 ...

  3. ASP.NET WebForm Form表单如何实现MVC那种“自动装配”效果呢?

    我们知道ASP.NET MVC有个强大的地方就是Form表单提交到action的时候,可以直接将Form的参数直接装配到action的参数实体对象中 比如 action方法 Register(User ...

  4. Asp.net MVC在View里动态捆绑压缩引用的js

    前言 Asp.net MVC 4以上版本多了BundleConfig.RegisterBundles方法,可以把要捆绑的脚本或样式进行捆绑压缩,以减少客户端的请求次数从而提高了客户端的访问速度. 问题 ...

  5. ASP.NET MVC 修改视图的默认路径(MVC2,MVC3)

    ASP.NET MVC2 修改视图的默认路径 步骤:1.编写继承自WebFormViewEngine的类,重写视图路径 2.在Application_Start()中添加语句: ViewEngines ...

  6. MVC参数自动装配

    在拿到一个类型的所有属性以及字段的描述信息后,就可以通过循环的方式,根据这些数据成员的名字去QueryString,Form,Session,Cookie读取所需的数据了. 就是遍历参数,然后用反射遍 ...

  7. ASP.NET MVC Autofac自动注入

    依赖注入容器有很多插件,我用过Unity和Autofac,这两个插件给我最明显的感觉就是Autofac很快,非常的快,毕竟是第三方开发的,而Unity相对而言性能比较稳定 下面附上Autofac自动注 ...

  8. ASP.NET MVC 中读取项目文件的路径

    MVC中获取某一文件的路径,来进行诸如读取写入等操作. 例:我要读取的文件是新生模板.doc,它在如下位置. 获取它的全路径:string path = HttpContext.Current.Ser ...

  9. ASP.NET MVC获取上传的路径

    刚才有网友问及,怎样获取<input type='file'>的值? Insus.NET测试了一下,在Inetnet Explor之下似乎没有问题,但是FireFox获取到的只是文件名. ...

随机推荐

  1. Linux设备驱动--块设备(四)之“自造请求”

    前面, 我们已经讨论了内核所作的在队列中优化请求顺序的工作; 这个工作包括排列请求和, 或许, 甚至延迟队列来允许一个预期的请求到达. 这些技术在处理一个真正的旋转的磁盘驱动器时有助于系统的性能. 但 ...

  2. eclipse自动创建项目出错Cannot change version of project facet Dynamic Web Module to 2.3.

    Cannot change version of project facet Dynamic Web Module to 2.3. step1:修改properties step2:修改web.xml ...

  3. I.MX6 各模块 clock 查询

    /********************************************************************* * I.MX6 各模块 clock 查询 * 说明: * ...

  4. 哈理工OJ P2320:OX

    题目链接:OX 题意 :给出一个3X3的黑白棋棋盘,棋盘上有若干黑白子,再给出下一个下的人,问下一个下的人能否赢 分析:考虑到只有39种状态,故用一个数保存目前棋盘的状态,记为value,再枚举空位D ...

  5. bzoj 4236: JOIOJI【前缀和+map】

    设sj,so,si分别是J O I的个数前缀和,然后要求求最长(l,r)满足sj[r]-sj[l-1]==so[r]-so[l-1]==si[r]-si[l-1],化简一下就是满足so[r]-so[l ...

  6. react hooks 全面转换攻略(三) 全局存储解决方案

    针对 react hooks 的新版本解决方案 一.redux维持原方案 若想要无缝使用原来的 redux,和其配套的中间件 promise,thunk,saga 等等的话 可以使用 redux-re ...

  7. AOP日志框架实现

    AOP日志框架实现 JDK动态代理实现日志框架 首先,在项目包com.ay.test 下创建业务接口类BusinessClassService,具体代码如下: BusinessC lassServic ...

  8. ueditor 编辑

    1.net  config.json imageUrlPrefix

  9. libcurl在centos6.4 64位操作系统上不支持https的解决方案

    rpm -e –nodeps 软件名 例如: 使用yum install nginx 安装了nginx, 这是如果直接使用yum remove nginx 的话,会把依赖的一些包也删掉, 所以要使用r ...

  10. Lightoj 1054 - Efficient Pseudo Code

    题目连接: http://www.lightoj.com/volume_showproblem.php?problem=1054 题目大意: 给出n,m,问n^m的所有因子之和是多少? 解题思路: 补 ...