在 ASP.NET MVC 5 中实现一对多关系

Implement one-to-many relationship in ASP.NET MVC 5

这是我的项目模型:

public class Project
{
    public int ProjectID { get; set; }
    public string ProjectTitle { get; set; }
    public string ProjectDetails { get; set; }

    public virtual ICollection<Proposal> Proposals{ get; set; }

}

这是我的提案模型:

public class Proposal
{
    public int ProposalID { get; set; }
    public string BidTitle { get; set; }
    public string BidDetails { get; set; }

    public virtual Project Project { get; set; }
}

如你所见,Project和Proposal之间是一对多的关系。在

mydomain/Project/Details/ProjectID

查看,我想放一个按钮,单击此按钮后,用户可以为该项目创建一个新的提案。我的问题是如何传递该项目的信息进行投标?如果你能给我一些关于它的提示,我会很高兴。谢谢

你说当用户点击按钮时用户转到另一个页面。您可以将 projectID 发送到该页面。这就是您获取项目 ID 的方法。

创建一个称为视图模型的模型,其中包括您要在同一视图下使用的两个模型。你会看起来像这样:

public class ProposalAndProjectModel
    {              
        public Proposal Proposal { get; set; }
        public Project Project{ get; set; }    
    }

将其另存为类似 ProposalAndProjectModel.cs 的格式,然后在您的视图中引用此模型。

现在在您看来,您将能够执行以下操作:

Model.Proposal.propertyName

Model.Project.propertyName

这应该可以帮助您获得创建新对象的正确参数。