多个实体在Post Web Api中发送

本文关键字:Api Web Post 实体 | 更新日期: 2023-09-27 17:51:24

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

我有下面的代码在我的账单

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发送User和Review吗?

mri应该是什么样子…我想到/api/位置/{id}/审查/用户(POST)……我不知道,我很感激你的帮助…谢谢! !

多个实体在Post Web Api中发送

这样做的一种方法是在

上发布确切的有效负载
/api/location/{id}/review

我想说,当访问资源时,您只会使用/user端点,因为向用户端点发布评论(基本上)会很奇怪。如果您谈论的是REST级别3,您可以从评论到用户提供链接。或者,您可以简单地将用户嵌入到评审资源中,以便在一次调用中获得两者。

话虽如此,最正统的方法可能是分步骤添加它们(添加评论、转到资源、遵循某种用户添加关系并POST用户)。