需要从数据库中获取具体信息

时间:2012-04-11 20:06:18

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

我被困住了,需要一些帮助,我正在使用实体框架,并在下面浏览ActionResult,创建一个节目列表:

  public ActionResult Browse(string genre)
    {
        var genreModel = db.Genres.Include("Shows")
        .Single(g => g.Name == genre);

        return View(genreModel);
    }

这是节目清单:

@foreach (var show in Model.Shows)
{
    <li>
    <a href="@Url.Action("Details", new { id = show.ShowId })"> 
    <img alt="@show.Title" src="@show.ShowArtUrl" /> <span>@show.Title</span> </a>   
    </li>
    }

我需要创建详细信息ActionResult,当用户点击上面显示的ShowId链接时会响应,并返回节目的详细信息,任何人?

1 个答案:

答案 0 :(得分:0)

好的,这就是我如何完成你想要做的事情(或者至少我认为你想要做的事情)。

这是我的观点:

@model IEnumerable<DarkRobot.Models.Post>
<p>
@Html.ActionLink("Create New", "Create")
</p>
        <aside class="blogAside">
            <h3>history of words</h3>
            <ul class="linkList">
            @foreach (var item in Model.Reverse())
            {
                string name = item.Title;
                <li><a>@Html.ActionLink(name, "Details", new { id = item.Id }, null)</a></li>
            }
            </ul>
        </aside>

这里我有@ Html.Actionlink,它抓住了我每篇博文的内容。因此,当创建链接时,它将传递该值为我的其他视图“详细信息”

Controller处理所有这些东西,所以这就是:

指数:

    public ViewResult Index()
    {
        var posts = db.Posts.Include(p => p.Blog).Include(p => p.Comments);
        return View(posts.ToList());
    }

现在细节控制器:

    public ViewResult Details(int id)
    {
        Post post = db.Posts.Find(id);
        return View(post);
    }

在ViewResult for my Details视图中,我确保获取传入的id并将其分配给我上传的帖子。

请告诉我这是否有帮助!