> 技术文档 > .NetCore MVC

.NetCore MVC

这个是我自己记得笔记,最好有点基础看我的。

html 辅助标签

@Html.DropList

分布视图

使用 RenderPartialAsync 呈现分部视图。 此方法不返回 IHtmlContent。 它将呈现的输出直接流式传输到响应。 因为该方法不返回结果,所以必须在 Razor 代码块内调用它:微软推荐
@{
    await Html.RenderPartialAsync(\"_AuthorPartial\");
}
由于 RenderPartialAsync 流式传输呈现的内容,因此在某些情况下它可提供更好的性能。 在性能起关键作用的情况下,使用两种方法对页面进行基准测试,并使用生成更快响应的方法。

放在sharp下

JS,Css捆绑(.net5)

模型校验

模型上

【RegularExpression(\"\")】

后端校验 

可以·传参true排除属性错误。

模型加上后,label不用写labeltext。

@html.Raw(s.Description)正常渲染html字符串

模型绑定

【formform】表单提交post,form-data

不能写中文

layout布局

_ViewStatrt.cshtml

推荐使用标签助手代替html辅助标签

@addtaghelpers *,使Microsoft.AspNetCore.mvc.TagHelpers 类在我们所有 Razor 视图中可用

可以用了

  

model 属性分配模型实例,以传递到分部视图。model 属性不能与 for 属性一起使用。

在以下标记中,实例化新的 Product 对象并将其传递给 model 属性进行绑定:

  1. <partial name=\"_ProductPartial\"
  2. model=\'new Product { Number = 1, Name = \"Test product\", Description = \"This is a test\" }\'>
view-data 属性分配 ViewDataDictionary,以传递到分部视图。以下标记使整个 ViewData 集合可访问分部视图:@{ ViewData[\"IsNumberReadOnly\"] = true;}在前面的代码中,IsNumberReadOnly 键值设置为 true 并添加到 ViewData 集合中。因此,在以下分部视图中可访问 ViewData[\"IsNumberReadOnly\"]:@model TagHelpersBuiltIn.Models.Product
@if ((bool)ViewData[\"IsNumberReadOnly\"]) { } else { }

自定义标签助手


 

// 作用于所有包含 \"my-id\" 属性的 
标签[HtmlTargetElement(\"div\", Attributes = \"my-id\")]// 作用于所有以 \"my:\" 为前缀的标签(如 )[HtmlTargetElement(\"\", TagStructure = TagStructure.NormalOrSelfClosing, Prefix = \"my\")]

视图组件

传参

区域保持一致

mvc的视图注入在 ASP.NET Core 中将依赖项注入到视图 | Microsoft Learn