> 自媒体 > (AI)人工智能 > 如何在 .Net 7 中将 Query 绑定到数组
如何在 .Net 7 中将 Query 绑定到数组
来源:IT狂人日记
2023-04-18 14:49:17
428
管理

在 .Net 7 中,我们可以通过绑定数组的方式来接收来自查询字符串的参数。这样就不需要再使用逗号分隔的字符串来获取参数了。

代码演示

假设我们需要从 query 上接受多个 id 并返回查询的结果。例如:id=1&id=2

在 .Net 7 中,我们可以这样实现:

public ActionResult GetResults([FromQuery]int[] ids){ // 使用 ids 数组查询结果}

这样就可以直接将 id=1&id=2 这样的查询字符串绑定到 ids 数组上。

借助 IParsable 绑定更复杂的类型

如果我们需要绑定的类型比较复杂,例如:

public ActionResult GetResults([FromQuery]MyDate[] dates){ // 使用 dates 数组查询结果}

我们可以通过实现 IParsable 接口来实现自定义的绑定。

public class MyDate : IParsable{ public int Month { get; set; } public int Day { get; set; } public void Parse(string input) { var parts = input.Split('-'); Month = int.Parse(parts[0]); Day = int.Parse(parts[1]); } public static MyDate Parse(string s, IFormatProvider? provider) { var date = new MyDate(); date.Parse(s); return date; } public static bool TryParse(string? s, IFormatProvider? provider, out MyDate result) { try { result = Parse(s, provider); return true; } catch { result = default; return false; } }}

这样就可以通过 dates=1-1&dates=2-2 这样的查询字符串来绑定到 MyDate[] 数组上了。

参考资料Bind arrays and string values from headers and query strings[1]

本文采用 Chat OpenAI 辅助注水浇筑而成,如有雷同,完全有可能。

本文作者:newbe36524本文链接:https://www.newbe.pro/ChatAI/How-to-binding-query-to-array-in-dotnet-7/版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!参考资料

[1]

Bind arrays and string values from headers and query strings: https://learn.microsoft.com/aspnet/core/fundamentals/minimal-apis?preserve-view=true&view=aspnetcore-7.0&WT.mc_id=DX-MVP-5003606#bind-arrays-and-string-values-from-headers-and-query-strings

文章来源于newbe技术专栏 ,作者newbe36524

0
点赞
赏礼
赏钱
0
收藏
免责声明:本文仅代表作者个人观点,与本站无关。其原创性以及文中陈述文字和内容未经本网证实,对本文以及其中全部或者 部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。 凡本网注明 “来源:XXX(非本站)”的作品,均转载自其它媒体,转载目的在于传递更多信息,并不代表本网赞同其观点和对 其真实性负责。 如因作品内容、版权和其它问题需要同本网联系的,请在一周内进行,以便我们及时处理。 QQ:617470285 邮箱:617470285@qq.com
相关文章
厨电独角兽宣布杀入AI:推出ChatGPT机器人 24小时直播带货..
铅笔道7月5日讯,米技国际控股有限公司发布自愿公告,宣布计划在中国注册..
写“毁灭人类计划书”、错误太多被 封禁,ChatGPT 不能替代程序员..
作者 | 褚杏娟这几天,OpenAI 的人工智能(AI)聊天机器人 ChatGPT 吸引..
人工智能聊天机器人大比拼:Bard vs Bing vs ChatGPT vs Claude,哪家强?..
产品定位及推荐Claude:Claude属高端产品,面向追求最佳体验的高端用户。它..
智能电动汽车新趋势:续航问题解决了?ChatGPT上车了?..
[爱卡汽车 前沿科技 原创]时代在进步,科技在发展。如今的汽车已经不再只..
热度背后,关于ChatGPT的B面……
现在,几乎无人不知ChatGPT了。这期间,ChatGPT和它的开发者Sam Altman(..
GPT—4跨过通用人工智能门槛了吗?
这是网友给出的一个图片问题——“我能用图中这些原料做出什么食物?”实..
保险巨头与ChatGPT“聊天记录”曝光!ChatGPT会取代代理人吗?..
最近,能写小说、会改代码、做得了情感咨询、聊得了人生哲学的“全能网友..
周鸿祎:要看到ChatGPT的无限潜力,搭不上这班车就可能被淘汰..
00:47国内企业应该如何布局类ChatGPT技术?2月9日下午,360创始人周鸿祎..
关于ChatGPT,大多数人是道听途说人云亦云|产业观察
在近期缺乏热点的中国互联网圈子里,ChatGPT火了。作为一款AIGC(AI生产..
关于作者
秋叶无痕(普通会员)
文章
503
关注
0
粉丝
0
点击领取今天的签到奖励!
签到排行

成员 网址收录40335 企业收录2981 印章生成194059 电子证书831 电子名片53 自媒体26178

@2022 All Rights Reserved 浙ICP备19035174号-7
0
0
分享
请选择要切换的马甲:

个人中心

每日签到

我的消息

内容搜索