将JSON结果从Dapper映射到对象

时间:2019-07-19 11:31:52

标签: c# .net json dapper

我想将dapper查询结果映射到JSON。

我有一个可行的解决方案,但说实话,这还不是很好。

我的C#对象:

public class JsonData
{
    private string _data;

    public int Id { get; set; }

    [NotMapped]
    public JArray DataJson
    {
        get
        {
            return JsonConvert.DeserializeObject<JArray>(string.IsNullOrEmpty(_data) ? "{}" : _data);
        }
        set
        {
            _data = JsonConvert.SerializeObject(value);
        }
    }
}

我的工作解决方案现在看起来:

var result = db.Query(query).ToList();
                var jsonData = new JsonData();
                var values = result.Select(x => (IDictionary<string, object>)x).First().Values.ToArray();
                jsonData.Id = (int)values[0];
                jsonData.DataJson = JArray.Parse((string)values[1]);

这是更好的方法吗?

0 个答案:

没有答案