多个实体发送 Post Web Api

Multiple entities send in Post Web Api

您好,我正在尝试添加用户对位置的评论

我的 Bll 中有以下代码

public void AddReview(Guid locationId, ReviewDto review, UserDto user)
        {
            var location = _locationRepository.Get(locationId);
            var reviewModel = new Review
            {
                Comment = review.Comment,
                Rate = review.Rate,
                Location = location,
                LocationId = location.Id,
                User = new User
                {
                    Name = user.Name,
                    Email = user.Email,
                    Password = user.Password
                },
                UserId = user.Id

            };
            _reviewRepository.Add(reviewModel);
            _reviewRepository.Save();
            location.AddReview(reviewModel);

        }
    }

可以从 Post 发送用户和评论吗?

如何U.R.I。应该看起来像..我想 /api/location/{id}/review/user (POST)...我不知道,我会很感激一些帮助..谢谢!!

这样做的一种方法是 POST 在

处获取确切的有效负载
/api/location/{id}/review

我会说你只会在 访问 该资源时使用 /user 端点,因为 POST 审查(基本上)用户端点。如果您谈论的是 REST level 3,您可能会收到来自用户的评论 link。或者,您可以简单地将用户嵌入评论资源中,以便在一次调用中同时获取它们。

也就是说,最正统的方法可能是逐步添加它们(添加评论、转到资源、遵循某种用户添加关系和 POST 用户。