0

イベントコントローラー

  public class EventController : Controller {

  public ViewResult Browse(Int32 EventId) {
   return View();
    }
  } 

ブラウズビュー

 @model IEnumerable<Events.WebUI.Models.EventModel>
 @foreach (var e in Model) {
 <div id="event-content">
 <img src="@e.LogoUrl" width="512px" title="event header" height="83px">
 </div>
 <div class="event-text">
  @e.EventName
 @Html.ActionLink(@e.EventName, "Browse", "Event", new { EventId = @e.EventId })
 </div>

ここでは、アクション メソッドを使用して、ID が localhost/Event/Browse/1 のアクション リンクにルーティングし、ホバーするとリンクが表示されるようにします。

この問題を解決するのを手伝ってください。route.configでパスもルーティングしました

4

2 に答える 2

1

ここには 2 つのオプションがあります。

1. すべての同様のケースで機能する一般的な設定。

routes.MapRoute("Events", "{controller}/{action}/{eventId}", new {
            controller = "Home",
            action = "Index",
            eventId = UrlParameter.Optional
        });

2. この場合にのみ機能する特定の設定。

routes.MapRoute("EventsSpecific", "Event/Browse/{eventId}",
                            new {
                                controller = "Event",
                                action = "Index",
                                eventId = UrlParameter.Optional
                            });

RouteCollectionこれをApp_Start 内の RouteConfig.cs ファイルに適用する必要があります。しかし、私はこれまでに試しroute.configたことはありませんが、大きな違いはないと確信しています.

最後のこと。の代わりに、などのパラメータ名にはキャメル ケースを 使用します。これは単なるベスト プラクティスです。eventIdEventId

お役に立てれば。

于 2013-06-10T08:06:38.807 に答える