ASP.NET Core MVC

项目结构

  1. 控制器由Controller类实现,视图一般是扩展名为cshtml的文件,而模型则是只有属性的普通C#类。
  2. 控制器类的名字一般以Controller结尾,并且被放到Controllers文件夹下。控制器的名字为控制器的类名去掉Controller。
  3. 视图一般被放到Views文件夹下的控制器名字的文件夹下。
  4. 视图→浏览器端提交的请求→模型→控制器→处理→模型→视图。渲染:Render。

案例

演示一个在控制器中查询数据,然后把数据传递给视图进行渲染的案例。

  1. 在Models文件夹下创建一个Person类,这个类包含Name,IsVIP,CreatedTime属性。

    cs 复制代码
    namespace WebApplication1.Models
    {
        public record Person(string Name,bool IsVIP,DateTime CreatedTime);
    }
  2. 在Controller文件夹下创建继承自Controller类的TestController类。

    cs 复制代码
    using Microsoft.AspNetCore.Mvc;
    using WebApplication1.Models;
    
    namespace WebApplication1.Controllers
    {
        public class TestController : Controller
        {
            public IActionResult Demo()
            {
                Person p1=new Person("小明",true,DateTime.Now);
                return View(p1);
            }
        }
    }

    控制器中方法的返回值一般是IActionResult类型的,控制器类中被外界直接访问的方法叫"操作方法"

  3. 在View文件夹下创建和TestController名称对应的Test文件夹,然后在Test文件夹添加空视图,Demo.cshtml。

    cs 复制代码
    @model WebApplication1.Models.Person
    
    <div>姓名:@Model.Name</div>
    <div>是否VIP:@Model.IsVIP</div>
    <p>@Model.CreatedTime</p>
相关推荐
jiayong234 小时前
海量数据处理技术方案与实现原理
大数据·c#·linq
z落落8 小时前
C# 类与对象、字段、静态与非静态+四大访问修饰符
开发语言·c#
魔法阵维护师8 小时前
从零开发游戏需要学习的c#模块,第三十二章(Boss 战系统)
学习·游戏·c#
魔法阵维护师9 小时前
从零开发游戏需要学习的c#模块,第三十三章(暂停菜单)
学习·游戏·c#
z落落9 小时前
C# Stack栈 / Queue队列+所有集合 终极一页汇总(全覆盖、零遗漏)
java·开发语言·c#
淡海水10 小时前
08-认知篇-对比-injectfix深度解析
unity·c#·热更新·clr·hybrid·injectfix
周杰伦fans19 小时前
C# 踩坑 CS8370:Switch Expression 在 C# 7.3 不可用及三种解决方案
c#
z落落21 小时前
C# ToCharArray + foreach遍历 + String与StringBuilder
开发语言·c#
xiaoshuaishuai81 天前
C# AvaloniaUI动态显示图片
开发语言·c#