1

私は立ち往生していて、助けが必要です。私はエンティティフレームワークを使用しており、ショーのリストを作成する次のブラウズ 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>
    }

上記のように ShowId を取得してリンクをクリックしたときに応答する Details ActionResult を作成し、ショーの詳細を返す必要があります。

4

1 に答える 1

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>

ここに、私が持っている各ブログ投稿の ID を取得する @Html.Actionlink があります。したがって、リンクが作成されると、その値が私の他のビュー「詳細」に渡されます

コントローラーはこれらすべてを処理するため、次のようになります。

索引:

    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);
    }

Details ビューの ViewResult で、渡された ID を取得し、それをプルアップしている投稿に割り当てるようにします。

これが役立つかどうか教えてください!

于 2012-04-11T20:17:16.400 に答える