[原创]Asp.net MVC学习之路-001

日期:17-3-7

控制器三个约定:

  1. 控制器命名规范:"NameController",以Controller结尾
  2. 控制器必须是非静态类
  3. 实现IController接口(多次继承)
    控制器里面的方法都被称为Action
    Views文件夹下面会根据Controller名新建若干个以Controller命名的文件夹,该文件夹下还能,只能新建一个文件夹“Shared”,以及一个系统生成的web.config。

添加视图:在Controller的方法名上右击添加视图

WebForm与Asp.net MVC请求页面的区别:

webForm请求的是一个aspx页面。 http://localhost/a.aspx

Asp.net MVC 请求地址,请求控制器里面的方法。http://localhost/Home/index
用户 > Controller-Action > ViewData数据-View
Action:

  1. 处理用户的请求,Request,Response
  2. 调用业务逻辑(Model BLL DAL)
  3. 把数据传递给View进行展示

ViewData[]从Controller向View传递数据
Action 如果没有指定(return View("index");)对应的视图来展示数据的话,默认是寻找跟Action同名的View进行展示。一般Action名与指定的视图同名。

前台表单代码

从前台获取数据的四种方式

方式一

public ActionResult ProcessUserInfo()
        {
         string UserName = Request["txtName"];//与前台name同名。对于表单form,只有设置了 name 属性的表单元素才能在提交表单时传递它们的值。
                string UserPwd = Request["txtPwd"];
        return Content("OK" + "
" + UserName + "
" + UserPwd); }

方式二

 public ActionResult ProcessUserInfo(FormCollection collection)
        {
string str = collection["txtName"];
string pwd=collection["txtPwd"];
return Content("OK" + "
" + str+ "
" + pwd }

方式三

public ActionResult ProcessUserInfo(string txtName,string txtPwd)//与前台name同名
{
    return Content("OK" + "
" + txtName + "
" + txtPwd) }

方式四

public class Info
        {
            public string txtName { get; set; } //与前台name同名
            public string txtPwd { get; set; }
        }
public ActionResult ProcessUserInfo(Info userA)
        {
        return Content("OK" + "
" + userA.txtName,string + "
" + userA.txtPwd) }

HtmlHelper

超链接的三种形式

超链接方式1

        链接到About页面
        

超链接方式2

        这种方式避免了上面更改路由机制之后要更改所有的链接代码
        
链接到About

超链接方式3

        
@Html.ActionLink("About页面","About","Home",null,new { style = "Color:green" ,@class="aaa"}) 设置htmlAttr

我在这里等你:


[原创]Asp.net MVC学习之路-001_第1张图片
image.png

你可能感兴趣的:([原创]Asp.net MVC学习之路-001)