用.net写web api的时候,返回json

本文记录了在使用.NET开发Web API时遇到的问题,即接口返回的JSON字符串中出现多余的双引号。通过将返回类型改为HttpResponseMessage,并在返回值处理上做调整,成功解决了该问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

某一天发现web api的接口返回的json字符串(string格式)中,有多余的双引号,百度之后修改OK,代码如下:

public HttpResponseMessage get()
        {
            //建立连接对象  
            SqlConnection cnn = new SqlConnection();
            cnn.ConnectionString = "Initial Catalog=TEST;Data Source=10.0x.5x.2x;User ID=xxxx;Password=xxx;";
            //打开连接  
            cnn.Open();


            string sql = "select khqc,dz from tbl_kh2";

            //建立执行对象  
            SqlCommand cmd = new SqlCommand(sql, cnn);
            DataSet ds = new DataSet();
            SqlDataReader dr = cmd.ExecuteReader();

            ArrayList clients = new ArrayList();
            while(dr.Read())
            {
                Client client = new Client();
                client.nm = dr["khqc"].ToString();
                client.ad = dr["dz"].ToString();
                //client.contact = dr["lxr"].ToString();
                //client.phone = dr["jh"].ToString();

                clients.Add(client);
            }

            cnn.Close();

            string json = JsonConvert.SerializeObject(clients);
            return new HttpResponseMessage { Content = new StringContent(json, System.Text.Encoding.UTF8, "application/json") };
        }

修改点只有两个地方:

1. 返回类型修改为HttpResponseMessage 

2. 最后一行返回值类型做了特殊处理。


以此备忘

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值