c# - 如何在 asp.net 核心 API 中从子对象设置对象属性值?
问题描述
如何从子对象设置internal
属性值。我检查了断点,它始终为空,而具有在请求正文中发送的值user_id
User.user_id
user.user_id
班级
public class Project
{
public int id {get; set;}
public string name {get; set;}
// user_id is null while user.user_id has value as sent in request body
internal int? user_id {get; set;}
public User user {get; set;}
public Project()
{
user_id = user?.user_id;
}
}
public class User
{
public int user_id {get; set;}
public int user_name {get; set;}
}
控制器
[HttpPost]
public IActionResult Create([FromBody] Project project)
{
return Ok(project);
}
解决方案
看起来您只是在使用内部属性来从对象user_id
中读取属性的值。如果是这种情况,那么您可以完全这样做-通过它读取对象,例如-user_id
user
user_id
user
public class Project
{
public int id { get; set; }
public string name { get; set; }
internal int? user_id { get { return user.user_id; } }
public User user { get; set; }
}
推荐阅读
- python - Python - 在 .csv 文件中为每个 for 循环迭代写入数组输出
- php - 将 varchar 列转换为 datetime2 而不影响列数据?
- python - 从子文件夹中读取所有图像,检测文本并在 Python 中使用原始名称和文件夹保存它们?
- typescript - Stopping Vue with veevalidate returning unexpected token export?
- html - 如何解决 401 未经授权的错误?
- mysql - 如何将 MySql 中的 MAX() 从 TextRow 更改为常规整数?
- javascript - React Typeahead and Validation ,TypeError: event.persist is not a function
- kql - 如何在具有嵌套数据的 kusto/data explorer 中展开 JSON 数据?
- javascript - Firefox“服务工作者向 FetchEvent.respondWith() 传递了一个承诺,该承诺以非响应值‘未定义’解决”,用于本地服务器
- azure - 更改密码自定义策略中的“请求中提供的用户名或密码无效”错误