一、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. Android调用本地WebService

    package com.example.testinvokewebservice; import org.ksoap2.SoapEnvelope; import org.ksoap2.serializ ...

  2. Hibernate 之 Mapping

    转自:  http://blog.csdn.net/jnqqls/article/details/8372732 从前面的介绍的Hibernate文章中我们已经对Hibernate有了一个初步的认识, ...

  3. Source code for redis.connection

    redis.connection — redis-py 2.10.5 documentation http://redis-py.readthedocs.io/en/latest/_modules/r ...

  4. leetcode 395. Longest Substring with At Least K Repeating Characters

    Find the length of the longest substring T of a given string (consists of lowercase letters only) su ...

  5. sql server 支持中文繁体和简体

    SET ANSI_PADDING ON  INSERT INTO 表 VALUES (N'中文')

  6. 利用JS 阻止表单提交

    情景一:不存在Ajax异步操作 1 使用背景:会议室预定管理系统中,当表单提交的时候需要验证预约的时间是否符合预定规则(不需要通过访问服务器),否则提示错误信息,阻止表单提交. 2 相关技术点: fo ...

  7. YTU 2411: 谁去参加竞赛?【简单循环】

    2411: 谁去参加竞赛?[简单循环] 时间限制: 1 Sec  内存限制: 64 MB 提交: 461  解决: 261 题目描述 学校要举办大学生程序设计竞赛,老师要求期末考试成绩在平均成绩以上的 ...

  8. Masonry 比例(multipliedBy)

    前言 说到iOS自动布局,有很多的解决办法.有的人使用xib/storyboard自动布局,也有人使用frame来适配.对于前者,笔者并不喜欢,也不支持.对于后者,更是麻烦,到处计算高度.宽度等,千万 ...

  9. CodeForces 730G Car Repair Shop (暴力)

    题意:给定 n 个工作的最好开始时间,和持续时间,现在有两种方法,第一种,如果当前的工作能够恰好在最好时间开始,那么就开始,第二种,如果不能,那么就从前找最小的时间点,来完成. 析:直接暴力,每次都先 ...

  10. mybatise

    http://www.cnblogs.com/xdp-gacl/p/4261895.html