当前位置: 首页 > news >正文

深圳网站设计定制开发大连网站制作 姚喜运

深圳网站设计定制开发,大连网站制作 姚喜运,做婚纱网站的意义,php企业网站源码 漂亮注#xff1a;如果你使用Dapper一段时间了#xff0c;这篇你可以跳过去了。在第十二篇中#xff0c;我们聊过官方的ORM——EntityFramework#xff0c;它可以把SQL细节都隐藏#xff0c;这对于一些标准化的关系数据库项目非常便捷。今天#xff0c;介绍另外一个流行的ORM… 注如果你使用Dapper一段时间了这篇你可以跳过去了。在第十二篇中我们聊过官方的ORM——EntityFramework它可以把SQL细节都隐藏这对于一些标准化的关系数据库项目非常便捷。今天介绍另外一个流行的ORM——DapperDapper是通过扩展IDbConnection方法来达到对数据的处理的特点是灵活高效。还是通过项目看看Dapper的使用。首先安装两个NuGet包我们还是使用之前的Exam项目的表来说明Dapper使用库是SQL Server。安装Dapper和SqlClientInstall-Package DapperInstall-Package Microsoft.Data.SqlClient下面是对Question进行增删改查using Dapper; using Microsoft.Data.SqlClient;var builder WebApplication.CreateBuilder(args); builder.Services.AddScopedIQuestionService, QuestionService(); var app builder.Build();app.MapPost(/question, async (IQuestionService questionService, QuestionModel question) {return await questionService.AddQuestionAsync(question); });app.MapPut(/question, async (IQuestionService questionService, QuestionModel question) {return await questionService.ModifyQuestionAsync(question); });app.MapGet(/question/{id}, async (IQuestionService questionService, int id) {return await questionService.GetQuestionAsync(id);});app.MapDelete(/question/{id}, async (IQuestionService questionService, int id) {return await questionService.DeleteQuestionAsync(id); });app.Run();public interface IQuestionService {TaskQuestionModel GetQuestionAsync(int id);Taskbool AddQuestionAsync(QuestionModel question);Taskbool DeleteQuestionAsync(int id);Taskbool ModifyQuestionAsync(QuestionModel question); } public class QuestionService : IQuestionService {private readonly SqlConnection _connection;public QuestionService(IConfiguration configuration){var connectionString configuration.GetConnectionString(ExamDatabase);_connection new SqlConnection(connectionString);}public async Taskbool AddQuestionAsync(QuestionModel question){var sql INSERT INTO [Questions]([Question],[Score],[QuestionTypeID],[SujectTypeID])VALUES(Question,Score,QuestionTypeID,SujectTypeID);return (await _connection.ExecuteAsync(sql, question)) 0;}public async Taskbool DeleteQuestionAsync(int id){var sql delete from questions where idid;return (await _connection.ExecuteAsync(sql, new { id })) 0;}public async TaskQuestionModel GetQuestionAsync(int id){var sql select * from questions where idid;return await _connection.QuerySingleAsyncQuestionModel(sql, new { id });}public async Taskbool ModifyQuestionAsync(QuestionModel question){var sql UPDATE [dbo].[Questions]SET [Question] Question,[Score] Score,[QuestionTypeID] QuestionTypeID,[SujectTypeID] SujectTypeIDWHERE IDID;return (await _connection.ExecuteAsync(sql, question)) 0;} }通过上面事例可以看到Dapper通过扩展IDbConnection的扩展方法来提供功能基本上查询用QueryT(sql,Param,...)增删改用Execute(sql,T,...)Dapper的方便之处是T全部是自运映射到sql中的参数的这样就能做到sql我们可以灵活且更高效语法编写参数可以方便的进出sql达到一个平衡点。如下图示关于更丰富多彩的Dapper使用详见Github仓库说明文档https://github.com/DapperLib/Dapper
http://www.yutouwan.com/news/186106/

相关文章:

  • 网站关键字怎么做中小学网站建设
  • 福建省建设执业资格注册管理中心网站服务器做php网站
  • 淄博市 网站建设报价网站优化工作室
  • 手机网站怎么优化开公众号
  • wordpress主题会员功能网站建设和网站优化哪个更重要
  • 技术支持 洛阳网站建设演讲介绍自己做的网页
  • 如何做网站关键字优化做网站用什么后台
  • 百度怎么自己做网站安徽互联网前十名公司
  • 如何用dede做带下单的网站合肥做网站行吗
  • 外地人网站备案直播网站制作
  • 网页设计作业视频网站合适做服装的国际网站
  • 香洲区建设局网站宁夏建设厅网站首页
  • 网站改版的方式大致有做网站的协议
  • 制作网站多少钱十大暗网搜索引擎
  • 服装公司网站规划建设制作一个app软件
  • 网站排名降级的原因有哪些天门网站建设设计
  • 沧州网站建设专业定制可以做免费推广的网站吗
  • 做网站容易学吗WordPress是静态么
  • 东铁匠营网站建设WordPress如何清空评论
  • 新浪网站开发语言企业微信公众号注册平台官网
  • 龙岩招聘求职网站有哪些上海搬家公司哪家好
  • 网站开发设计招聘网页开发代码
  • 学习html5的网站newedge wordpress
  • 文件传输协议登录网站怎么建企业自己的网站吗
  • 百度云网站空间建设差差软件下载免费
  • 网站设计什么价位做预约的网站
  • 在什么网站可以做推广网站建设作用 名词解释
  • 制作学校网站软件工程课程设计
  • 网站描述关键词做游戏网站的需求分析
  • 做网站是买服务器还是买cdn360seo关键词优化