繁体   English   中英

将JSON字符串插入SQL Server 2008数据库

[英]Insert json string into SQL Server 2008 database

我有一个JSON字符串像

{"identifier":7,"name":"xyz"}

此处的标识符名称是列名称。 我分别传递了表名,该表名可能与列名一起变化。

我想转换成插入查询语句。

现在我在做什么:

JavaScriptSerializer jss = new JavaScriptSerializer();
var d = jss.Deserialize<dynamic>(format);

它使每个元素的对象具有键和值,但我不知道如何遍历它。

请提出建议,以确保我走上正确的道路,或者是否可以使用其他方法。

注意:json结构将相同,但是字符串可以比我上面提到的示例更长或更短。

您可以通过以下示例解析json。 一旦在对象中解析了值,就可以将对象直接用于ORM或从stringbuilder创建查询。

https://dotnetfiddle.net/trckde上的工作示例

using System;
using Newtonsoft.Json;

public class Program
{
    public static void Main()
    {
        var str ="{\"identifier\":7,\"name\":\"xyzstr\"}";
        DBModel dbModel = JsonConvert.DeserializeObject<DBModel>(str);
        Console.WriteLine(dbModel.identifier);
        Console.WriteLine(dbModel.name);

    }
}

public class DBModel
{
   public int identifier { get; set; }
   public string name { get; set; }


}

对于使用JObject的通用解决方案,则可以遍历键值对。

小提琴更新: https : //dotnetfiddle.net/trckde

var str = "{\"identifier\":7,\"name\":\"xyzstr\"}";
            var jsonObject = JsonConvert.DeserializeObject<JObject>(str);
            foreach (var item in jsonObject)
            {
                Console.WriteLine(item.Key + " " + item.Value.ToString());
            }
            Console.ReadLine();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM