如何使用 ASP.Net MVC 将变量转换为 JSON?
How to convert a variable to a JSON using ASP.Net MVC?
我尝试将变量转换为 JSON 字符串,但输出不符合我的要求。
我已经尝试了下面的代码,但输出不是 JSON 格式。
using (var reader = new StreamReader("C:\somedirectory\Payout.csv"))
using (var csv = new CsvReader(reader))
{
csv.Configuration.RegisterClassMap<FundTransferMap>();
var list = csv.GetRecords<FundTransfer>().ToList().Dump();
var viewModel = new FundTransfer();
var serializer = new JavaScriptSerializer();
var json = serializer.Serialize(list);
Response.Write(json);
return View();
}
这段代码在 Response.Write
上的输出是这样的
[Count: 1]
-- MVC.Models.FundTransfer State --
senderRefId: TRANSFER-0001
tranRequestDate: 2018-08-10T08:40:45.897
particulars: particulars
sender:
[Count: 1]
-- MVC.Models.Sender State --
name: Name1
address:
[Count: 1]
-- MVC.Models.Address State --
line1: line1
line2: line2
city: city
province: province
zipcode: zipcode
country: Country
但我希望它是这样的
{
"senderRefId": "TRANSFER-0001",
"tranRequestDate":"2018-08-10T08:40:45.897",
"particulars":"particulars",
"sender": {
"name":"Name1",
"address": {
"line1":"Line1",
"line2":"Line2",
"city":"city",
"province":"province",
"zipCode":"zipcode",
"country":"country"
}
}
}
试试这个:
使用 JSON.Net DLL (Newtonsoft) 将 DataTable 转换为 JSON。
现在在此方法中,我们将使用 Newtonsoft DLL 将 C# 数据表转换为 JSON。
首先,您需要下载 JSON.Net DLL。您可以从 Nuget.org 下载它,然后将 Newtonsoft.JSON 命名空间导入我们的页面,如下代码所示。 JSON.NET 是一个流行的 high-performance JSON .NET 框架。
谢谢@kwingkwing.ko。我已经使用此代码解决了我的问题
var json = JsonConvert.SerializeObject(csv.GetRecords<FundTransfer>());
Response.Write(json);
这将我的对象转换为 JSON。
我尝试将变量转换为 JSON 字符串,但输出不符合我的要求。
我已经尝试了下面的代码,但输出不是 JSON 格式。
using (var reader = new StreamReader("C:\somedirectory\Payout.csv"))
using (var csv = new CsvReader(reader))
{
csv.Configuration.RegisterClassMap<FundTransferMap>();
var list = csv.GetRecords<FundTransfer>().ToList().Dump();
var viewModel = new FundTransfer();
var serializer = new JavaScriptSerializer();
var json = serializer.Serialize(list);
Response.Write(json);
return View();
}
这段代码在 Response.Write
上的输出是这样的
[Count: 1]
-- MVC.Models.FundTransfer State --
senderRefId: TRANSFER-0001
tranRequestDate: 2018-08-10T08:40:45.897
particulars: particulars
sender:
[Count: 1]
-- MVC.Models.Sender State --
name: Name1
address:
[Count: 1]
-- MVC.Models.Address State --
line1: line1
line2: line2
city: city
province: province
zipcode: zipcode
country: Country
但我希望它是这样的
{
"senderRefId": "TRANSFER-0001",
"tranRequestDate":"2018-08-10T08:40:45.897",
"particulars":"particulars",
"sender": {
"name":"Name1",
"address": {
"line1":"Line1",
"line2":"Line2",
"city":"city",
"province":"province",
"zipCode":"zipcode",
"country":"country"
}
}
}
试试这个:
使用 JSON.Net DLL (Newtonsoft) 将 DataTable 转换为 JSON。
现在在此方法中,我们将使用 Newtonsoft DLL 将 C# 数据表转换为 JSON。
首先,您需要下载 JSON.Net DLL。您可以从 Nuget.org 下载它,然后将 Newtonsoft.JSON 命名空间导入我们的页面,如下代码所示。 JSON.NET 是一个流行的 high-performance JSON .NET 框架。
谢谢@kwingkwing.ko。我已经使用此代码解决了我的问题
var json = JsonConvert.SerializeObject(csv.GetRecords<FundTransfer>());
Response.Write(json);
这将我的对象转换为 JSON。