我有这堂课:
public class Section
{
[Key]
public int SectionId { get; set; }
public string Titre { get; set; }
public virtual List<String> Tag { get; set; }
public virtual ICollection<Ressource> Ressources { get; set; }
public Section() { this.Tag=new List<string>(); }
}
在 createsection 视图中,我将包含由空格或其他字符分隔的标签的字符串发送到控制器,然后将此字符串拆分为如下列表:
[Authorize]
[HttpPost]
[InitializeSimpleMembership]
public ActionResult CreerSection(Section section, string tags)
{
if (ModelState.IsValid)
{
//section.Id = WebSecurity.GetUserId(User.Identity.Name);
char[] delimiterChars = { ' ', ',', '.', ':', '\t' };
section.Tag = tags.Split(delimiterChars).ToList();
_db.Entry(section).State = EntityState.Added;
_db.SaveChanges();
return RedirectToAction("Index" );
}
return View();
}
我在“section.Tag =”行旁边放了一个断点,我注意到标记列表现在包含从 createview 发送的所有标记(即:“tag1”“tag2”“tag3”)。到目前为止完美...
然后在另一个视图中,Section 视图,当我想显示所有部分标签时,标签列表等于 0 并且不包含值“tag1”“tag2”和“tag3”为什么?
@model Mocodis.Models.Section
@foreach (string s in Model.Tag)
{
<p>@s</p>
}
谢谢