我需要帮助来分配列表嵌套 Web Api 2.0:
public HttpResponseMessage Post([FromBody] ZHitung1m respon1)
到目前为止我的代码只能分配第一类模型
我可以分配和打电话
= respon1.DistCode
= respon1.ProductCode
这是我的模型类 WEB Api :
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
namespace WebAPI.Models
{
public class ZHitung1m
{
public string DistCode { get; set; }
public List<ZHitung2m> Row { get; set; }
public class ZHitung2m
{
public string ProductCode { get; set; }
}
}
}
这是我的 API 控制器
use HttpResponseMessage Post =
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Web.Http;
using WebAPI.Models;
namespace WebAPI.Controllers
{
public class Zhitung1Controller : ApiController
{
[HttpPost]
public HttpResponseMessage Post([FromBody] ZHitung1m respon1)
{
var variable1 = respon1.DistCode;
if (variable1 == "anton")
{
respon1.DistCode = "budiman";
}
return Request.CreateResponse(HttpStatusCode.OK, respon1);
}
}
}
到目前为止我只能分配(
respon1.DistCode
)respon1.ProductCode
)?
无需更改邮递员中的嵌套结构, 这是我的邮递员结果:
respon1.ProductCode
)?
到目前为止我尝试过public class ZHitung2m : ZHitung1m
{
public string ProductCode { get; set; }
}
它的改变和破坏了我想要的邮递员结构。
2.
public class ZHitung1m : ZHitung2m
{
public string DistCode { get; set; }
public List<ZHitung2m> Row { get; set; }
}
public class ZHitung2m
{
public string ProductCode { get; set; }
}
使用该类模型代码,可以调用assign(
respon1.ProductCode
)
但也改变和打破了我想要的邮递员结构:
让你的模型相互继承似乎根本不像你想要做的,因为它们代表不同的概念,即
ZHitung1m
包含一系列 ZHitung2m
,如果你从另一个继承一个是说 ZHitung1m
是 ZHitung2m
的一种,反之亦然。
因此不需要继承......然后尝试按照这些方式进行操作(将变量名称更改为描述性名称):
namespace WebAPI.Controllers
{
public class Zhitung1Controller : ApiController
{
[HttpPost]
public HttpResponseMessage Post([FromBody] ZHitung1m respon1)
{
var variable1 = respon1.DistCode;
if (variable1 == "anton")
{
respon1.DistCode = "budiman";
}
foreach(var row in respon1.Row)
{
var variable2 = row.ProductCode;
... do something with variable2 or row here ...
}
return Request.CreateResponse(HttpStatusCode.OK, respon1);
}
}
}