asp.net core razor pages & mvc

asp.net razor pages是啥

  • razor页面与mvc的视图组件很相似,具有相同的语法和功能。

  • 最关键区别是模型和控制器代码也包含在razor页面中,更像是mvvm,支持双向数据绑定,开发体验更简单些。

  • razor pages 感觉是web forms的演变,语法上也由以前的<%@ %>做了些修改。都忘啦,汗!

  • razor pages更适合一些只读和基本数据输入的简单页面。
    mvc适用于大量动态服务器视图、单面应用程序,rest api和ajax调用的应用程序。
    在这里插入图片描述
    好多目录都很像的。
    razor至简,mvc灵活要复杂。
    还是直接写html好。

  • mvc
    模型M表示应用数据的类,使用验证逻辑来对数据进行强制业务规则验证,存于db中。
    视图V显示用户界面UI的组件,通常显示M中数据。
    控制器C用来处理浏览器请求,检索模型数据,调用返回响应的视图模板。
    mvc中视图仅显示信息,控制器处理用户输入和交互并对其进行响应。

using Microsoft.AspNetCore.Mvc;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;

namespace MvcMovie.Controllers
{
    public class MovieController : Controller
    {
        //public IActionResult Index()
        //{
        //    return View();
        //}

        /// <summary>
        /// 返回一个字符串
        /// </summary>
        /// <returns></returns>
        public string Index()
        {
            return "movie defalut action";
        }
		//(string name,int times=1)
        public string WelcomeDefault()
        {
            return "welcome action method";
        }
 		//https://localhost:44343/Movie/Welcome?name=a&times=10
        public string Welcome(string name,int times=1)
        {
            //防止恶意输入
            return HtmlEncoder.Default.Encode($"Hello:{name},{times}");
        }
    }
}

  • https://localhost:44343/Movie/Welcome
  • mvc使用URL路由逻辑 /[Cotroller]/[ActionName]/[Parameters]
    忘了webapi是啥样了
    在这里插入图片描述
    Startup.cs中设置路由
app.UserEndPoints(endpoints=>
{
	endpoints.MapControllerRoute(
		name:"default",
		pattern:"{controller=Home}/{action=Index}/{id?}"
	);
});

上面写的是在地址中不输入Controller和Action的默认值
可以加些参数,试试看。
https://localhost:44343/Movie/Welcome?name=a&times=10
在这里插入图片描述

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值