ASP.NET MVC为ManyToMany关系创建视图

时间:2016-06-10 15:49:55

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

我正在研究创建Create方法(在视图显然使用的控制器内),我可以在其中选择一个或多个" Bands"这些是某些音乐视频中的表演者 - " Vids"。理想情况下,我希望它像Stack上的标签栏一样工作:

所以我可以输入乐队'名称和小下拉菜单可以建议我可以添加到栏中的确切名称,然后再提交 - 提交。

我的问题是 - 我几乎不知道应该如何开始。我开始我的项目,将它的内容分为3个部分,模型与实体和IdentityContext,存储库部分和实际的应用程序部分。

我的虚拟机看起来像这样:

public class VidCreateViewModel
{
    public string Title { get; set; }
    public string Link { get; set; }
    public ICollection<Band> Bands { get; set; }
}

我在VidsController中的Create方法如下所示:

    public async Task<ActionResult> Create()
    {
        return View();
    }

    [HttpPost]
    [ValidateAntiForgeryToken]
    public async Task<ActionResult> Create(VidCreateViewModel model)
    {
        if (!ModelState.IsValid)
            return View(model);

        var vid = new Vid();
        vid.Title = model.Title;
        vid.Link = model.Link;
        vid.Bands = model.Bands;

        var result = await _vidRepository.SaveVidAsync(vid);
        if (!result)
            return View("Error");

        return RedirectToAction("Index");
    }

所以我的问题在于如何在实际视图中管理这种输入形式,所以它会建议乐队Band实体然后将其绑定在数据库中,因此某些视频可能会有很多表演者,很多乐队可以在音乐中表演视频。

0 个答案:

没有答案