首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在Dapper中使用C#字典从银行映射JSON?

如何在Dapper中使用C#字典从银行映射JSON?
EN

Stack Overflow用户
提问于 2018-06-26 20:36:47
回答 3查看 1.4K关注 0票数 0

我有一个MySQL数据库和一个JSON列,它按如下方式存储项目:

代码语言:javascript
运行
复制
[{"key":"value"},{"key2","value2"},...}

我如何处理这个问题并加载到C#字典中?从字符串转换为字典时出现错误

模型示例:

代码语言:javascript
运行
复制
public class Person
{
  string name;
  Dictionary<string, string> itens;
}
EN

回答 3

Stack Overflow用户

发布于 2018-06-26 20:38:30

您需要首先选择它。Dapper does not support this out of the box。然后您可以使用Newtonsoft.JSON (NuGet-Package),并像这样使用它的反序列化程序:

代码语言:javascript
运行
复制
myPerson.itens = JsonConvert.DeserializeObject<Dictionary<string, string>>(json);

参考:https://www.newtonsoft.com/json/help/html/DeserializeDictionary.htm

票数 0
EN

Stack Overflow用户

发布于 2018-06-26 22:34:10

代码语言:javascript
运行
复制
Dictionary<string, string> dir = new Dictionary<string, string>();

                    string splitOn = "value";


                    dir = cnn.Query<string, string, KeyValuePair<string, string>>("YOUR_SP", (s, i) => new KeyValuePair<string, string>(s, i), null, null, false, splitOn, null, null)
        .ToDictionary(kv => kv.Key, kv => kv.Value);
票数 0
EN

Stack Overflow用户

发布于 2018-06-28 05:04:10

您必须创建自定义处理程序。我已经写了关于这个主题的详细文章。

GitHub上也提供了示例:

https://github.com/yorek/dapper-samples

我已经使用SQL Server作为关系型数据库管理系统,但是一切都应该适用于MySQL

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51043112

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档