首页 > 解决方案 > 如何在控制台应用程序中将 API 数据(转换后的对象)保存到 SQL 服务器

问题描述

我已经成功构建了一个控制台应用程序,它成功地请求 API 数据并将其转换为 JSON 对象。但是,我不知道如何将这些 DTO 文件(最近存储的 API 对象)放入我的 SQL 服务器。

到目前为止,我有这个用于控制台应用程序。

class Program
    {
        static void Main(string[] args)
        {
            getRequestData();
        } 

        public static void getRequestData()
        {
            var client = new RestClient(URL);
            var request = new RestRequest();
            var response = client.Execute(request);

            if (response.StatusCode == System.Net.HttpStatusCode.OK)
            {
                string rawResponse = response.Content;
                AllRequests.Rootobject result = JsonConvert.DeserializeObject<AllRequests.Rootobject>(rawResponse);
            }
        } 
    }

如您所见,控制台应用程序 program.cs 文件成功获取了一个 get 请求,然后将 API 数据转换为一个对象(我认为是一个 Json 对象)。这是保存数据的 DTO 文件 (AllRequests)。

class AllRequests
    {
        public class Rootobject
        {
            public Operation operation { get; set; }
        }

        public class Operation
        {
            public Result result { get; set; }
            public Detail[] details { get; set; }
        }

        public class Result
        {
            public string message { get; set; }
            public string status { get; set; }
        }

        public class Detail
        {
            public string requester { get; set; }
            public string workorderid { get; set; }
            public string accountname { get; set; }
        }
    }

在调试模式下测试应用程序时,对象存储正确,一切正常。但是,我不知道如何将这些对象保存到 SQL 数据库中。我已经有一个 SQL 服务器,但是,我不确定如何推送已经转换的数据并将其保存到回顾表中。例如,将这些数据保存到我的 SQL 数据库中的请求表中。

目前我只知道如何在这个控制台应用程序中进行 API 调用。我找不到任何数据可以帮助我完成此任务的第二部分,即将数据存储到 SQL 数据库中。

任何帮助将不胜感激,如果有太多不必要的信息,请道歉。

标签: c#sql.netapirestsharp

解决方案


有几种方法可以使您的应用程序与数据库交互。您可以设置您的应用程序以使用实体框架(EF) 来管理您的数据库。它是一个强大且非常流行的ORM;网络上有很多资源可以寻求帮助。

就个人而言,我喜欢使用Dapper,与 EF 相比,它使用起来非常简单。您只需提供连接字符串即可创建 SqlConnection 对象。

您可以在此链接中找到一个简单的教程。


推荐阅读