摘要: ABP是为新的现代Web应用程序使用最佳实践和使用最流行工具的一个起点。可作为一般用途的应用程序的基础框架或项目模板。本系列是介绍基于ABP+EasyUI的Web开发框架的形成过程,期间包括一些ABP的介绍,ASP.NET MVC Core技术、EasyUI技术、JQuery技术、WebAPI 技术,以及一些我对整体框架改造的基础性东西,力求更加稳定、通用、高效、简洁,最少的代码做最多的事情。我所使用的ABP版本是4.3,是2019年3月14日的版阅读全文
posted @ 2019-05-23 17:06 DotNet菜园 阅读(589) 评论(2) 编辑
摘要: ASP.NET Core MVC 包含对通过固定格式或根据客户端规范来设置响应数据格式的内置支持。 ASP.NET Web API的内容协商(Content Negotiation)机制的理想情况是这样的:客户端在请求头的Accept字段中指定什么样的MIME类型,Web API服务端就返回对应的MIME类型的内容(响应头的中Content-Type就是Accept中指定的MIME类型)。而现实情况是,Web API服务端能返回什么MIME类型的响应类型取决于有没有对应这个MIME类型的MediaTypeFormatter。ASP.NET Core Web API的默认提供JsonMediaTypeFormatter,如果要支持 XmlMediaTypeFormatter需要进行配置。 ASP.NET Core MVC 使用的默认格式是 JSON。 内容协商由 ObjectResult 实现。 它还内置于从帮助程序方法(全部基于 ObjectResult)返回的特定于状态代码的操作结果中。 还可以返回一个模型类型(已定义为数据传输类型的类),框架将自动阅读全文
posted @ 2019-05-14 13:35 DotNet菜园 阅读(719) 评论(0) 编辑
摘要: 在之前的文章中我们是使用Rester来测试我们的WebAPI的。接下来,我们来创建一个实际的页面来测试之前我们写的WebAPI。我们创建一个HTML页面,并在页面使用 jQuery 来调用 Web API 。通过jQuery来调用增删除改查WebAPI接口,并用 API 接口返回的响应中的详细信息更新到页面中。阅读全文
posted @ 2019-05-07 13:37 DotNet菜园 阅读(761) 评论(1) 编辑
摘要: 通过使用Http定义的服务器的交互方法,进行更新与删除。 PUT通常用于向服务器发送请求,如果URI不存在,则要求服务器根据请求创建资源,如果存在,服务器就接受请求内容,并修改URI资源的原始版本。如果新的资源被创建,这个原始服务器就必须通过201(Created)响应通知用户代理。如果已有资源被修改,则发送200或者204响应,表示成功完成了该请求。阅读全文
posted @ 2019-04-25 15:31 DotNet菜园 阅读(544) 评论(0) 编辑
摘要: webapi的返回值类型介绍,与新增方法。阅读全文
posted @ 2019-04-18 09:34 DotNet菜园 阅读(1115) 评论(0) 编辑
摘要: 添加 GetBookItem 方法,并进行测试。阅读全文
posted @ 2019-04-12 17:39 DotNet菜园 阅读(915) 评论(3) 编辑
摘要: 为WEBAPI项目添加数据库上下文、注册数据库上下文、添加数据库连接、 添加控制器阅读全文
posted @ 2019-04-03 16:44 DotNet菜园 阅读(1117) 评论(0) 编辑
摘要: 从今天开始来学习如何在 ASP.NET Core 中构建 Web API 以及每项功能的最佳适用场景。阅读全文
posted @ 2019-03-28 14:06 DotNet菜园 阅读(1793) 评论(5) 编辑
摘要: 通过前面的教程学习,你可以实现一个简单的书籍管理系统。 在本教程将向书籍索引页中添加分页功能。阅读全文
posted @ 2019-03-11 11:13 DotNet菜园 阅读(905) 评论(3) 编辑
摘要: 乐观并发的解决方案有以下三种: 1) 可以跟踪用户已修改的属性,并仅更新数据库中相应的列。 2) 可让后提交的用户更改覆盖之前用户提交的更改。 3) 可以阻止在数据库中更新后一用户提交的更改。阅读全文
posted @ 2018-09-21 16:45 DotNet菜园 阅读(1312) 评论(1) 编辑
摘要: 在本教程中,我们来学习如何进行分组。 在 书籍管理系统的“关于”页上,将显示每个出版社有多少书籍。 这要求在分组上再进行分组和简单计算。 要完成此操作,需要执行以下操作: 创建一个视图模型类,该视图类是需要传递到该视图的数据的抽象。 修改关于视图。阅读全文
posted @ 2018-08-22 13:58 DotNet菜园 阅读(769) 评论(4) 编辑
摘要: 在本教程中,我们来学习如何进行排序。 通过前面的教程学习,你可以实现一个简单的书籍管理系统。 在本教程将向书籍索列表页面中添加排序功能。 列标题是一个链接,用户可以单击它使数据按该列排序。 反复单击列标题在升序排列和降序排列之间切换。阅读全文
posted @ 2018-08-03 17:39 DotNet菜园 阅读(1029) 评论(4) 编辑
摘要: 我们通过前面的二篇文章的学习,已经实现了文件上传的主要功能,这一篇文章我们来学习如何把上传文件的功能页面添加到首面上面,以及删除功能的实现 。阅读全文
posted @ 2018-07-11 14:09 DotNet菜园 阅读(1111) 评论(0) 编辑
摘要: 将页面发布到服务器时,会检查 ModelState。 如果无效,会重新生成Describe,且页面会呈现一个或多个验证消息,陈述页面验证失败的原因。 如果有效,FileUpload 属性将用于“OnPostAsync”中,以完成两个上传文件的上传,并创建一个用于存储数据的新 Describe 对象。 然后会将这两个上传文件保存到数据库。阅读全文
posted @ 2018-07-06 14:56 DotNet菜园 阅读(1218) 评论(0) 编辑
摘要: 本篇文章我们来讲在书籍信息管理系统示例使用简单的模型绑定上传文件,本文的示例适合上传小型文件。本篇文章演示如何通过单个 POST 将两个文件上传至服务器。阅读全文
posted @ 2018-06-29 13:50 DotNet菜园 阅读(1628) 评论(3) 编辑
摘要: 本篇文章我们学习如何给 Book实体类添加校验规则。当用户进行创建或编辑书籍信息时,都会触发校验规则。 软件开发中有一个主要原则被称为 DRY(即“不要自我重复”)。 Razor 页面鼓励进行只需要开发一次,这个功能就能在整个应用中使用,不需要重复开发,或复制粘贴。 DRY 有助于减少应用中的代码量。 DRY 使代码更加不易出错,且更易于测试和维护。 Razor 页面和 Entity Framework框架提供的校验是支持DRY 原则的极佳示例。 校验规则在实体类中的某处以声明方式指定,且在应用程序的所有位置强制执行。阅读全文
posted @ 2018-06-13 16:03 DotNet菜园 阅读(1560) 评论(5) 编辑
摘要: 在经过了上面篇文章的学习之后,本篇文章我们来学习如何使用 Entity Framework Code First 迁移功能将新字段添加到模型,并且同时将新字段添加到数据库中。 使用 EF Code First 自动创建数据库时,Code First 会向数据库添加一个表,以帮助跟踪数据库的架构是否与生成它的实体类同步。 如果它们不同步,EF 就会引发异常。 这样一来就更容易发现一致的数据库表或者代码问题。阅读全文
posted @ 2018-05-30 16:50 DotNet菜园 阅读(1493) 评论(3) 编辑
摘要: 在经过了上面几篇文章的学习这宾,本篇文章我们来学习如何在已经的功能中添加新字段。阅读全文
posted @ 2018-05-23 16:18 DotNet菜园 阅读(1143) 评论(0) 编辑
摘要: 在这一篇教程中我们学习如何增加查询功能,我们将在书籍列表页面中添加搜索功能,通过按“书籍名称”或“作者”来搜索书籍。阅读全文
posted @ 2018-05-11 17:44 DotNet菜园 阅读(2043) 评论(2) 编辑
摘要: 并发异常处理与请求处理过程介绍。阅读全文
posted @ 2018-05-03 17:23 DotNet菜园 阅读(2045) 评论(2) 编辑