父实体上的 WebAPI POST 子项



我有以下模型:

public class Product
{
    [Key]
    public int Id { get; set; }
    [Required]
    public string Name { get; set; }
    [Required]
    public Category Category { get; set; }
}
public class Category
{
    [Key]
    public int Id { get; set; }
    [Required]
    public string Name { get; set; }
    public ICollection<Product> Products { get; set; }
}

我有一个包含两个控制器的 WebAPI 项目:具有 GET、POST、PUT 和 DELETE 功能的产品控制器。和带有 GET 的类别控制器,包括产品、POST、PUT 和 DELETE。

我希望能够在现有类别中添加产品,但我不知道如何执行此操作。

我尝试使用对父类别的引用调用我的产品控制器的 POST 方法,但它在我的数据库中创建了一个新类别。

我必须使用类别的PUT方法吗?

问候。

尝试稍微改变一下模型。

将类别 ID 作为外键添加到产品实体。如果每个产品都有一个类别,但一个类别可以有多个产品,则使其成为一对多关系。

现在,当您发布到产品控制器时,请确保将 CategoryId 与它一起传递。这将在两者之间建立关系,您将能够通过联接或您想要解决问题的方式选择有关类别的信息。

我假设您使用实体框架进行数据访问?但鉴于你提供的信息,这就是我真正能想到的。

最新更新