我从几天开始使用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; }
}
IdKontrahenta
是Forgein 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。