首页 > 其他分享 >.Net Core 4. VS2022 + Core6.0 + Razor 设置model特性改变显示的属性名称,通过@page指令改变路由规则,

.Net Core 4. VS2022 + Core6.0 + Razor 设置model特性改变显示的属性名称,通过@page指令改变路由规则,

时间:2023-05-11 13:35:14浏览次数:44  
标签:Core set Razor Name get Display page public string

通过Model的特性修改显示的内容/规则

  目前在Index页面上,显示的表头都是model的字段名,在实际项目中通常不会这么做,这里我们修改一下Model部分来让表头显示的更加直观。

  1.引入System.ComponentModel.DataAnnotations.Schema,也可以事后根据提示自动添加。

  2.[Display(Name = "标题")],指定属性显示的名称为 Name = “xxx” 的内容。

  3.[DataType(DataType.Date)],限制日期字段只显示到年月日。

  4.[Column(TypeName ="decimal(18,2)")],则是为了让价格字段能正确映射到数据库的货币类型。

using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;

namespace StandardCoreStudy.Models
{
    public class Movie
    {
        /// <summary>
        /// ID
        /// </summary>
        public int ID { get; set; }
        /// <summary>
        /// 标题
        /// </summary>
        [Display(Name = "标题")]
        public string Title { get; set; } = string.Empty;

        /// <summary>
        /// 发布日期
        /// 表示发布日期只需要日期,不需要精确到时间部分
        /// </summary>
        [Display(Name ="发行日期")]
        [DataType(DataType.Date)]
        public DateTime ReleaseDate { get; set; }
        /// <summary>
        /// 类型
        /// </summary>
        [Display(Name = "类型")]
        public string Genre { get; set; } = string.Empty;
        /// <summary>
        /// 价格
        /// </summary>
        [Display(Name = "票价")]
        [Column(TypeName ="decimal(18,2)")]
        public decimal Price { get; set; }
    }
}

 

修改Detail详情页的路由规则

  目前在列表页index上,详情页的链接规则是

 <a asp-page="./Details" asp-route-id="@item.ID">Details</a>

  生成的html代码是

 <a href="/Movies/Details?id=1">Details</a> 

  可以修改@page指令来变成 /Movies/Details/1 

  打开详情页Detail.cshtml,在头部修改代码

@page "{id:int?}"

  生成后,可以发现指向详情页的链接格式已经自动更新成  /Movies/Details/id这种了,而修改edit和删除delete的 链接格式 则没有变化。

 

标签:Core,set,Razor,Name,get,Display,page,public,string
From: https://www.cnblogs.com/luyShare/p/17390775.html

相关文章

  • 深入浅出pageage
    package.json就是一个json文件,除了能够描述项目的包依赖外,允许我们使用“语义化版本规则”指明你项目依赖包的版本,让你的构建更好地与其他开发者分享,便于重复使用。package.jsonpackage.json常用属性package.json环境相关属性package.json依赖相关属性package.json......
  • ASP.NET Core MVC 从入门到精通之文件上传
    随着技术的发展,ASP.NETCoreMVC也推出了好长时间,经过不断的版本更新迭代,已经越来越完善,本系列文章主要讲解ASP.NETCoreMVC开发B/S系统过程中所涉及到的相关内容,适用于初学者,在校毕业生,或其他想从事ASP.NETCoreMVC系统开发的人员。经过前几篇文章的讲解,初步了解ASP.NETCore......
  • 记EFCore迁移在分层项目中的问题
    首先在单个项目中使用EFCore是很简单的,看看微软官网的文档几乎不会出现迁移的问题但是我的习惯是把与表相关的实体类和创建的迁移文件全部单独放在一个程序集中,这样便于集中管理,而且还可以把数据层共享给多个应用层,减少重复写代码我的应用层的程序集是WpfApp,是一个WPF程序,数据层......
  • .Net Core 3. VS2022 + Core6.0 + Razor Razor 页面
    列表页Pages/Movies/Index.cshtml.csRazor页面派生自 PageModel。按照约定,PageModel 派生的类称为 PageNameModel。例如,“索引”页命名为 IndexModel。这里使用IndexModel的构造函数,通过依赖注入的方式,将数据上下文对象StandardCoreStudyContext添加到页面中。......
  • PageOffice 在线打开 word 文件并添加水印
    一、服务器端方法插入水印1、插入文字水印WordDocumentdoc=newWordDocument();//添加水印,设置水印的内容doc.getWaterMark().setText("PageOffice开发平台");poCtrl.setWriter(doc);2、插入图片水印WordDocumentdoc=newWordDocument();//添加水......
  • 学.Net Core开发 ---- 系列文章
    原文:学.NetCore开发----系列文章-jack_Meng-博客园(cnblogs.com) 目录:     置顶:ASP.NETCore新书终于上市,完成今年一个目标,赠书活动ASP.NETCore2.0:一.概述ASP.NETCore2.0:二.开发环境ASP.NETCore2.0:三.项目结构ASP.NETCore2.0......
  • net core依赖注入
    .NetCore中依赖注入有几个关键的类型,简单介绍一下:IServiceCollection:负责存储注册的服务,可以通过其扩展方法进行服务注册;ServiceDescriptor:服务注册时的信息,如服务类型、实现类型、实例类型、生命周期等;IServiceProvider:理解是常说的容器,是IServiceCollection创建出来的,用来......
  • 推荐一个.Net Core开发的Websocket群聊、私聊的开源项目
    今天给大家推荐一个使用Websocket协议实现的、高性能即时聊天组件,可用于群聊、好友聊天、游戏直播等场景。项目简介这是一个基于.NetCore开发的、简单、高性能的通讯组件,支持点对点发送、群聊、在线状态的订阅。该项目还包含群聊例子,可以用于学习。技术架构1、跨平台:基于.Ne......
  • 转载:用pageOffice控件实现 office word文档在线编辑 表格中写数据的方法
    PageOffice对Word文档中Table的操作,包括给单元格赋值和动态添加行的效果。 1应用场景OA办公中,经常要在文档的指定位置表格,填充后端指定数据。如word文档中,表格数据   如下表格中 人员信息人员信息表公司名称部门名称员工姓名A公司开发部李......
  • C# .Net Core 合并PDF文件
    使用PdfSharpCorenuget包代码实现usingMicrosoft.AspNetCore.Razor.TagHelpers;usingPdfSharpCore.Pdf;usingPdfSharpCore.Pdf.IO;usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;usingSystem.Threading.Tasks;namespace......