C#后端接收前端的参数
接收参数
1. 直接使用 [FromBody] 特性来告诉 ASP.NET Core 将请求的 JSON 数据反序列化为 实体类 对象
[FromBody]
BlogNewsDTO实体类
点击查看代码
[HttpPost("Create")]//使用 [FromBody] 特性来告诉 ASP.NET Core 将请求的 JSON 数据反序列化为 CreateBlogNewsDTO 对象
public async Task<ActionResult<ApiResult>> Create([FromBody] BlogNewsDTO dto)// string title,string content,int typeid 实体类里的参数
{
BlogNews blogNews = new BlogNews
{
BrowseCount = 0,
Content = dto.Content,
LikeCount = 0,
Time = DateTime.Now,
Title = dto.Title,
TypeId = dto.TypeId,
WriterId = Convert.ToInt32(this.User.FindFirst("Id").Value) //2
};
bool b= await _iblogNewsService.CreateAsync(blogNews);
if (!b)
return ApiResultHelper.Error("添加失败,服务器发生错误");
return ApiResultHelper.Success(blogNews);
}
2.创建一个接受对应参数的实体类,用字符串接受前端的JSON数据,利用JsonConvert.DeserializeObject方法将字符串 反序列化成 实体类 对象
例:
接收的参数
data={%22Machine%22:%22DJKX-005-3%22,%22time%22:%222024-02-02T06:39:56%22}
实体类
获取参数并使用
点击查看代码
public string GetLatestdata(string data)
{
string decodedData = HttpUtility.UrlDecode(data);//处理url中的特殊字符、此处暂无作用
var requestData = JsonConvert.DeserializeObject<DateRequest>(decodedData);//将字符串反序列成实体类
List<TemperatureData> temperatureData = temperatureService.GetTemperatureData(requestData);
// 返回 JSON 格式的温度数据
return JsonData.CreateJStrForData(
"true",
"200: 查询成功!",
temperatureData
);
//return JsonConvert.SerializeObject(new
//{
// success = true,
// message = "200: 查询成功!",
// data = temperatureData
//});
//return JsonData.CreateJStrForData("true", "200:查询成功!", data);
}