问题
脚本:
-
信号机版本1.0.0 RC1最终版
-
dotnet核心2.0
-
提示:用户帖子-评论模型。
问题:
当我通过WebSocket发送一个模型时,它会自动失败(不会向客户机发送任何消息)。如果我设置为空导航属性,它将正常工作:
_context.Posts.Add(model);
_context.SaveChanges();
model.User.Posts = null; // <- removing this line fails silently
_hub.Clients.All.SendAsync("AddAsync", model);
如何诊断发生的情况?有人知道原因是什么?
一些不必要的代码详细信息
User.cs
public Guid Id { get; set; }
// ...
public virtual List<Post> Posts { get; set; } = new List<Post>();
Post.cs
public Guid Id { get; set; }
// ...
public virtual User User { get; set; }
PostsController.cs
private IHubContext<PostsHub> _hub;
private DatabaseContext _context;
public PostsController(IHubContext<PostsHub> hub)
{
_hub = hub;
}
// ...
[HttpPost]
public async Task<ActionResult> PostAsync([FromBody] Post model)
{
// ...
_context.Posts.Add(model);
_context.SaveChanges();
model.User.Posts = null;
_hub.Clients.All.SendAsync("AddAsync", model);
// ...
}