C# 将int输出转换为JSON

C# 将int输出转换为JSON,c#,asp.net,json,formatting,C#,Asp.net,Json,Formatting,我创建了一个ASP.NET Web API,它使用dll文件中的加法函数查找两个整数的总和。当我运行应用程序时(http://localhost:52241/api/dlladdition/9/6)我得到的结果是“15”。我想要的结果类似于{“result”:15}(JSON格式)。我如何做到这一点?我在代码中包含的JSON代码似乎不起作用 以下是我的代码: 添加.cs using ClassLibraryDll; public class Addition { static int n

我创建了一个ASP.NET Web API,它使用dll文件中的加法函数查找两个整数的总和。当我运行应用程序时(
http://localhost:52241/api/dlladdition/9/6
)我得到的结果是
“15”
。我想要的结果类似于
{“result”:15}
(JSON格式)。我如何做到这一点?我在代码中包含的JSON代码似乎不起作用

以下是我的代码:

添加.cs

using ClassLibraryDll;
public class Addition
{
    static int num1;
    static int num2;
    int sum = MathClass.Add(num1, num2);
}
public class Temp
{
    public int num1 { get; set; }
    public int num2 { get; set; }
    public int sum { get; set; }
}

public class DllAdditionController : ApiController
{
    private Addition addition = new Addition();

    public int GET(int num1, int num2)
    {
        int result = ClassLibraryDll.MathClass.Add(num1, num2);
        string json = JsonConvert.SerializeObject(result);
        return (json);
    }
}
DllAdditionController.cs

using ClassLibraryDll;
public class Addition
{
    static int num1;
    static int num2;
    int sum = MathClass.Add(num1, num2);
}
public class Temp
{
    public int num1 { get; set; }
    public int num2 { get; set; }
    public int sum { get; set; }
}

public class DllAdditionController : ApiController
{
    private Addition addition = new Addition();

    public int GET(int num1, int num2)
    {
        int result = ClassLibraryDll.MathClass.Add(num1, num2);
        string json = JsonConvert.SerializeObject(result);
        return (json);
    }
}

有人请帮帮我。提前非常感谢。

您可以使用JSON媒体类型格式化程序通过JSON将响应设置为

var json = GlobalConfiguration.Configuration.Formatters.JsonFormatter;
json.UseDataContractJsonSerializer = true;
如果您希望将Web API响应限制为仅JSON或XML,则可以从Global.asax中定义的应用程序启动方法调用此函数

void ConfigureApi(HttpConfiguration config)
{
    // Remove the JSON formatter
    config.Formatters.Remove(config.Formatters.JsonFormatter);

    // or

   // Remove the XML formatter
   config.Formatters.Remove(config.Formatters.XmlFormatter);
}

有关更多信息,请参阅

您可以使用JSON媒体类型格式化程序通过JSON将响应设置为

var json = GlobalConfiguration.Configuration.Formatters.JsonFormatter;
json.UseDataContractJsonSerializer = true;
如果您希望将Web API响应限制为仅JSON或XML,则可以从Global.asax中定义的应用程序启动方法调用此函数

void ConfigureApi(HttpConfiguration config)
{
    // Remove the JSON formatter
    config.Formatters.Remove(config.Formatters.JsonFormatter);

    // or

   // Remove the XML formatter
   config.Formatters.Remove(config.Formatters.XmlFormatter);
}
有关更多信息,请参阅

我的项目经理坚持要采用JSON格式:/

它。您的项目经理需要仔细阅读当前的JSON规范

如果希望将结果包装在具有
result
属性的对象中,则可以使用单个属性
result
定义一个类,然后返回该类

我的项目经理坚持要采用JSON格式:/

它。您的项目经理需要仔细阅读当前的JSON规范



如果您希望将结果包装在具有
result
属性的对象中,您可以使用单个属性
result
定义一个类,然后返回该类。

请显示调用API的代码
{15}
这不是有效的JSON,有效的JSON对象始终具有成对的键(属性以“”引用)和值。如果在本例中需要某个有效的JSON对象,则该对象应为
{“result”:15}
或仅为
15
。该格式需要一个对象,您可以声明一个类,该类具有一个属性
result
(其数据类型为
int
)。这需要编写更多的代码。您的
GET
方法当然应该返回该类型,而不是
int
。您试图将事情复杂化,在这种情况下,
15
的简单返回值应该完全可以。除非您使用复杂对象设计自己的JSON结果格式。简单值
15
也可以一个有效的JSON可解析字符串,意味着反序列化
“15”
将返回数字15。请显示调用API
{15}
的代码。这不是一个有效的JSON,有效的JSON对象总是有一对键(属性由“”引用)和值。如果在这种情况下需要一些有效的JSON对象,它应该是
{“result”:15}
或简单地
15
。该格式需要一个对象,您可以声明一个类,该类具有一个属性
result
(其数据类型为
int
)。这需要编写更多的代码。您的
GET
方法当然应该返回该类型,而不是
int
。您试图将事情复杂化,在这种情况下,
15
的简单返回值应该完全可以。除非您使用复杂对象设计自己的JSON结果格式。简单值
15
也可以一个有效的JSON可解析字符串,意味着反序列化
“15”
将返回数字15。我将
var JSON=GlobalConfiguration.Configuration.Formatters.JsonFormatter;JSON.UseDataContractJsonSerializer=true;
这组代码放在应用程序启动()的Global.asax.cs文件中。或者,如果您正在使用任何其他启动类,只需在中添加代码行。我应该将
var json=GlobalConfiguration.Configuration.Formatters.JsonFormatter;json.UseDataContractJsonSerializer=true;
这组代码放在应用程序启动()的Global.asax.cs文件中的哪里。或者,如果您正在使用任何其他启动类,只需在中添加一行代码。我该如何做。如果您需要更多指导,请告诉我could@SusmithaNaidu:你到底在哪里需要帮助?你知道如何用属性声明一个C#类吗?我不确定。我做了addition.cs类。我必须在那里添加更多代码?@SusmithaNaidu:你明白我说的吗当我说“用一个属性声明一个新的C#类”时?如果不是,你到底被困在哪里了?不,我不明白:(我该怎么做呢?如果你愿意,请给我更多的指导could@SusmithaNaidu:你到底在哪里需要帮助?你知道如何用一个属性声明一个C#类吗?我不确定。我做了addition.cs类。我必须在那里添加更多代码?@SusmithaNaidu:你明白我说的“用一个属性声明一个新的C#类”是什么意思吗如果没有,你到底被困在哪里?不,我不明白:(