C# - 带对象的 DataAnnotations

C# - DataAnnnotations with objects

我有一个关于 DataAnnotations 的问题。我有以下两个 类;

public class Project
{

   public int ID { get; set; }

   [Required]
   public string ProjectName { get; set; }

   [Required]
   public User Manager { get; set; }

}

public class User
{

   public int ID { get; set; }

   [Required]
   public string Name { get; set}
}

目前我的想法行不通。我想要的是,当我创建一个项目时,您只需要输入一个 ID(您不需要名称,因为它会在数据库中搜索)和一个项目名称。如果我想创建一个用户,它只需要一个名字。完成这项工作的最佳方法是什么?我不想将 User 更改为 int,因为当我在 Project 上执行 GET 操作时,我希望将 User 作为对象返回。

感谢您的帮助!

我会添加 int 并保留对象:

public class Project
{

    public int ID { get; set; }

    [Required]
    public string ProjectName { get; set; }

    [Required]
    public int ManagerID { get; set; }

    public User Manager { get; set; }
}

在数据输入中,用户必须 enter/select ID,但在获取数据时检索对象并在更改 ID 时更新对象。