asp.net------MVC之Controller请求服务

请求什么?

请求一个服务,对于程序来讲就是请求一个或多个功能。对于C#来讲就是请求类中的一个方法

 

如何请求?


在B/S结构用户请求Server的唯一途径就是URL(统一资源定位语言,俗称网站)

        

类名和方法在URL上怎么体现?

http://localhost:8080/类名/方法名

不是所有的类都能访问

类名必须以Controller结尾
必须继承Controller抽象类
类必须是public的
专业术语:这样的类叫控制器

//控制器代码示例:   
namespace Study.Controllers
{
    public class TestController : Controller
    {
        public ActionResult Index()
        {
            return View();
        }
    }
}//第一次新建一个Cotroller运行时,需要重新生成解决方案

 

不是所有的方法都能访问

方法必须是public
方法不能加特性[NonAction]
方法不能重载
重载的方法需要通过特性区分

特性:

[HttpGet][HttpPost]
[NoAction]
[ActionName("reg")]   	//取别名

专业术语:这样的方法叫Action

    //取别名访问:
    public class TestController : Controller
    {
        public ActionResult Index()
        {
            return View();
        }
        [ActionName("World")]     //此处可更改为[HttpGet],通过请求方式访问
        public ActionResult test()
        {
            return Content("Hello World");
        }
        [ActionName("city")]      //此处可更改为[HttpPost],通过请求方式访问
        public ActionResult test(String a)
        {
            return Content("Hello city");
        }
    }

 

控制器默认代码解析

View方法是什么?怎么用?

    // 8种重载
        View();                                                              //返回与Action名称相同的视图文件       
        View(object model);                                                 //文件查找同上,将Model传递到页面
        View(IView view);                                                  //呈现自定义的视图
        View(string viewName);                                            //呈现指定的视图文件
        View(IView view, object model);                                 //在自定义视图传递Model对象
        View(string viewName, object model);                           //在指定的页面传递Model对象
        View(string viewName, string masterName);                     //在视图页面使用母版页,第二个参数为               母版页的路径
        View(string viewName, string masterName, object model);           //在使用母版页的视图中传递Model对象

ActionResult是什么?

//ActionResult是一个抽象类
//ActionResult的子类
return Content("");
return new EmptyResult();
return new HttpUnauthorizedResult();
return JavaScript("<script></script>");
return Json();
return Redirect("url");
return RedirectToAction("");
return RedirectToRoute("");

 

Action方法必须返回ActionResult类型吗?

可以返回任何有效的数据类型

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

靓仔很忙i

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值