使用ICollection将模型发送到Controler,ASP.NET MVC

时间:2017-09-07 10:29:38

标签: c# asp.net asp.net-mvc entity-framework

我从几天开始使用EF,现在我有问题要发送(在一个视图中)ICollection模型。另一种方式很简单(从控制器到查看)。

这是一个例子。

有课程(抱歉以我的母语编码)。

首先:

public partial class Kontrahenci
{
    [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2214:DoNotCallOverridableMethodsInConstructors")]
    public Kontrahenci()
    {
        this.PracownikKontrahenta = new HashSet<PracownikKontrahenta>();
    }

    public int KontrahentId { get; set; }
    public string Nazwa { get; set; }
    public string NazwaSkrocona { get; set; }

    BLA BLA A LOT OF VARIABLES

    public string Gwarancja { get; set; }

    [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2227:CollectionPropertiesShouldBeReadOnly")]
    public virtual ICollection<PracownikKontrahenta> PracownikKontrahenta { get; set; }
}

第二

public partial class PracownikKontrahenta
{
    public int PracownikId { get; set; }
    public string Imie { get; set; }
    public string Nazwisko { get; set; }
    public string Telefon { get; set; }
    public int IdKontrahenta { get; set; }

    public virtual Kontrahenci Kontrahenci { get; set; }
}

IdKontrahentaForgein Key (NOT NULL)

所以我想创建一个表单,我可以使用Kontrahent类发送到Controller模型,使用ICollection发送PracowanikKontrahenta(我将使用js脚本添加新的和新的输入点击按钮&#34;添加下一个&#34;,但首先我必须知道如何发送它。)

我试过了:

<div class="row">                       
    @Html.TextBoxFor(model => model.PracownikKontrahenta.ToList()[0].Imie)
    @Html.TextBoxFor(model => model.PracownikKontrahenta.ToList()[0].Nazwisko)
    @Html.TextBoxFor(model => model.PracownikKontrahenta.ToList()[0].Telefon)
</div>

但它不会发送给Controller ICollection<PracownikKontrahenta>

最后PracownikKontrahenta将从新模型Kontrahenci获取外键,并保存在db中。我还将Kontrahenci保存在db ofc。

0 个答案:

没有答案