ASP MVC4/创建时类之间的关系

本文关键字:之间 关系 MVC4 创建 ASP | 更新日期: 2023-09-27 17:58:44

大家好,感谢您的阅读和帮助。

我是asp的初学者。

我有两个班:

public class Organisation
{
    public int OrganisationId { get; set; }
    public string Nom_Organisation { get; set; }
    public string Adresse_Organisation { get; set; }
    public string Mail_Organisation { get; set; }
    public DateTime Date_Ajout_Org { get; set; }
    public virtual ICollection<Contrat> contract { get; set; }
    public virtual ICollection<Ticket> Ticket_Org { get; set; }
    public virtual ICollection<Interlocuteur> Interlocuteurs { get; set; }
    public virtual ICollection<Environnement> Environments { get; set; }
    public virtual ICollection<Outils> Outils { get; set; }
    public virtual ICollection<Support> Supports { get; set; }


    public Organisation() 
    {
    }
}

public class Contrat
{
    public int ContratId { get; set; }
    public DateTime Date_Conclu { get; set; }
    public string Reference { get; set; }
    public string Commentaire { get; set; }
    public virtual Organisation Orga{ get; set; }
    [Required]
    public int TypeContratId { get; set; }
    public virtual TypeContrat Type { get; set; }

    public Contrat()
    {

    }
}

我想创建一个组织,然后添加合同。问题是我真的不知道怎么做。我用生成的控制器创建组织,但当我试图通过向其发送组织ID来思考创建合同的方法时。

我想在默认生成的表中添加一个按钮,该按钮将发送到创建具有所选组织ID的合同的操作。

希望你能理解我的问题!提前谢谢。

ASP MVC4/创建时类之间的关系

我认为您使用的是实体框架。如果是这样,那么你不必担心只需创建组织并在ICollection<Contrat> contract 中添加Contrat

  Organisation newOrg = new Organisation();
  newOrg.contract  = new List<Contrat>();
  newOrg.contract.add(new contract())
  context.Organisation.Add(newOrg);
  context.save();

或者你可以使用Guid其他方式:

change to:
public int OrganisationId { get; set; } => public Guid OrganisationId { get; set; }
Organisation newOrg = new Organisation();
newOrg.OrganisationId =  Guid.New();    
contract newContract = new contract();
newContract.OrganisationId = newOrg.OrganisationId;
context.Organisation.Add(newOrg);
context.save();