我有一个实体框架,代码优先,用于创建 ToDo 模型的 MVC 表单。ToDo 表单有一个下拉列表,用户必须在其中选择所需的客户端。
public class ToDo
{
[Key]
public int ToDoId {get;set;}
[Required]
public int ClientId {get;set;}
public string TaskDescription {get;set;}
}
public class Client
{
[Key]
public int ClientId {get;set;}
public string ClientName {get;set;}
public string AddressLine1 {get;set;}
public string AddressLine2 {get;set;}
}
我希望能够提供从同一屏幕添加新客户端的选项,并且不会丢失可能已经输入的 ToDo 信息。
我已尝试将当前票证数据发布到单独的操作,并将部分视图返回到带有客户端表单的模式。但是在提交 Client 表单时,因为传递给操作的数据也必须是 ToDo 模型(如果我想在返回时预填充 ToDo 表单),ModelState 仍在验证 ToDo 对象而不是 Client 对象。
我显然在处理这一切都是错误的,但我在网络上找不到任何关于我的场景的信息。