创建ASP.NET Core MVC应用程序(6)-添加验证 DRY原则 DRY("Don't Repeat Yourself")是MVC的设计原则之一.ASP.NET MVC鼓励你只定义一次功能或行为,然后在应用程序中各处进行使用.这会大大 减少需要编写的代码量,使你的代码不容易出错,更便于测试和维护. MVC和Entity Framework Core Code First所提供的验证功能是实际应用中DRY原则的一个很好的实例.你可以在一个地方(在模型类中)声明指定的验证规则,在整…
创建ASP.NET Core MVC应用程序(5)-添加查询功能 & 新字段 添加查询功能 本文将实现通过Name查询用户信息. 首先更新GetAll方法以启用查询: public async Task<IEnumerable<User>> GetAll(string searchString) { var users = from u in _context.Users select u; if (!string.IsNullOrEmpty(searchString))…
创建ASP.NET Core MVC应用程序(4)-添加CRUD动作方法和视图 创建CRUD动作方法及视图 参照VS自带的基架(Scaffold)系统-MVC Controller with views, using Entity Framework我们来创建CRUD方法. ① 将上一篇的Models/UserContext.cs文件中的用来指定使用的数据库逻辑的OnConfiguring方法删除,将逻辑移到Startup.cs文件中的ConfigureServices方法中. public v…
创建ASP.NET Core MVC应用程序(1)-添加Controller和View 参考文档:Getting started with ASP.NET Core MVC and Visual Studio 本文是参考了.NET Core文档和源码,可能有人要问,直接看官方的英文文档不就可以了吗,为什么还要写这些文章呢? 原因如下: 官方文档涉及的内容相当全面,属于那种大而全的知识仓库,不太适合初学者,很容易让人失去重要,让人掉入到具体的细节之中. 对于大多数人来讲开发语言只是工具,程序员都有…
创建ASP.NET Core MVC应用程序(3)-基于Entity Framework Core(Code First)创建MySQL数据库表 创建数据模型类(POCO类) 在Models文件夹下添加一个User类: namespace MyFirstApp.Models { public class User { public int ID { get; set; } public string Name { get; set; } public string Email { get; se…
创建ASP.NET Core MVC应用程序(2)-利用MySQL Connector NET连接到MySQL 用惯.NET的研发人员都习惯性地使用SQLServer作为数据库.然而.NET Core都玩开源了,那么本文我就采用MySQL数据库. 安装MySQL 首先从官网下载MySQL安装包.在Mac下会安装到/usr/local/mysql/bin/mysql文件目录下. Mac下安装完成之后可以在系统偏好设置查看到MySQL: 然后将MySQL路径加入到环境变量之中: 打开终端,输入如下命…
作者:陈希章 发表于 2017年6月25日 谈一谈.NET 的跨平台 终于要写到这一篇了.跨平台的支持可以说是 Office 365 平台在设计伊始就考虑的目标.我在前面的文章已经提到过了,Microsoft Graph 服务针对一些主流的开源平台(主要用来做跨平台应用)都有支持,例如 python,nodejs 等.他们真的非常好用,与此同时我虽然对他们也有一定的了解,但要跟我最熟悉的 Microsoft .NET 来比较的话,我自然还是更喜欢后者了. 所以,一直在等待合适的时间,要来写 Mi…
This tutorial will teach you the basics of building an ASP.NET Core MVC web app using Visual Studio 2015. 在这个范例里,我们将使用Visual Studio 2015创建基本的Asp.Net Core MVC网站. 安装Visual Studio和.Net Core Install Visual Studio Community 2015. Select the Community down…
本文讨论ASP.NET Core 2.1中与ASP.NET Core MVC / Web API控制器中的模型绑定相关的功能.虽说这是一个功能,但从我的角度来看,它更像是一个错误修复! 请注意,我使用的是 NET Core 2.1 Preview 1,正式版发布后,功能可能存在变动. ASP.NET Core 2.0 模型验证 模型验证是ASP.NET Core MVC 管线的重要组成部分.有很多方法可以注入到验证层(例如使用FluentValidation),最常见的方法可能是使用来自Syst…
在应用程序的内存中缓存常见数据(如查找)可以显着提高您的MVC Web应用程序性能和响应时间.当然,这些数据必须定期刷新. 当然你可以使用任何方法来更新数据,例如Redis中就提供了设定缓存对象的生命时间,那么对于这种单对象的更新的做法我觉得是不符合我的编程习惯的,我们可以使用QuartZ.NET 框架来进行任务调度,我们在任务计划中进行统一的缓存更新,也就达到了我们的目的. Quartz受到良好支持,跨平台库可用于在应用程序内部调度任务.由于ASP.NET Core架构和开箱即用的中间件支持,…