fanhuayimeng 发表于 2021-2-1 09:39:13

API自定义返回结果

本帖最后由 fanhuayimeng 于 2021-2-1 16:38 编辑

以下是范例中API POST数据的返回代码:
using GrapeCity.Forguncy.ServerApi;
using System;
using System.Collections.Generic;

namespace MyAPI
{
    public class MyAPI : ForguncyApi
    {
      
      public void TestPostAPI()
      {
            //获取post请求的数据
            var form = this.Context.Request.ReadFormAsync().Result;
            var khid = form["khid"];
            var ddh = form["ddh"];
            var order_num = form["订单表_订单号"];
            var child_order_num = form["子单号"];
            //转换数据类型为string
            string result = Convert.ToString(khid) + Convert.ToString(ddh);

            this.Context.Response.Write(result.ToString());

            //使用AddTableData方法向订单表中添加数据
            this.DataAccess.AddTableData("订单表", new Dictionary<string, object> {
                { "客户ID", khid },
                { "订单号", ddh }
            });
          使用AddTableData方法向订单详情表中添加数据
            this.DataAccess.AddTableData("订单详情表", new Dictionary<string, object> {
                { "订单表_订单号", order_num },
                { "子单号", child_order_num }
            });
      }
    }

}


红色部分是返回信息,但无论结果是什么都是返回"khid+ddh",现在请教大神,如何做到写入成功返回1,失败返回0呢?


Eric.Liang 发表于 2021-2-1 09:39:14

fanhuayimeng 发表于 2021-2-1 10:54
感谢大大回复 ,那程序默认的失败返回值是多少呢?TRY CATHC不会呢

你可以看看这里
https://www.runoob.com/csharp/csharp-exception-handling.html

jcy123 发表于 2021-2-1 09:48:35

你返回的就是这个结果肯定不是1,你返回什么,你的this.Context.Response.Write(返回值);



fanhuayimeng 发表于 2021-2-1 10:29:33

jcy123 发表于 2021-2-1 09:48
你返回的就是这个结果肯定不是1,你返回什么,你的this.Context.Response.Write(返回值);

感谢兄弟回复,咱真是有缘分。。。。那这个返回值是成功的值呢还是失败的值呢?

jcy123 发表于 2021-2-1 10:32:03

本帖最后由 jcy123 于 2021-2-1 10:34 编辑

fanhuayimeng 发表于 2021-2-1 10:29
感谢兄弟回复,咱真是有缘分。。。。那这个返回值是成功的值呢还是失败的值呢?
成功了。失败是返回不出khid+ddh的。你不说我还没注意哎:L

fanhuayimeng 发表于 2021-2-1 10:34:40

特殊要求失败了也返回个值呢?

Eric.Liang 发表于 2021-2-1 10:41:11

fanhuayimeng 发表于 2021-2-1 10:29
感谢兄弟回复,咱真是有缘分。。。。那这个返回值是成功的值呢还是失败的值呢?

这个返回值是成功的返回值,也就是正常执行到这行代码后反馈,如果有异常,你可以通过try catch抓住

jcy123 发表于 2021-2-1 10:41:53

fanhuayimeng 发表于 2021-2-1 10:34
特殊要求失败了也返回个值呢?

try catch 捕捉异常,失败了肯定会捕捉到异常里,具体逻辑你在catch里写

fanhuayimeng 发表于 2021-2-1 10:54:30

Eric.Liang 发表于 2021-2-1 10:41
这个返回值是成功的返回值,也就是正常执行到这行代码后反馈,如果有异常,你可以通过try catch抓住

感谢大大回复 ,那程序默认的失败返回值是多少呢?TRY CATHC不会呢

flygoodkiller 发表于 2021-2-1 11:16:33

string result = Convert.ToString(khid) + Convert.ToString(ddh);

this.Context.Response.Write(result.ToString());

result是string为什么还要result.ToString()?你又没有重载toString方法。
页: [1] 2
查看完整版本: API自定义返回结果