0

私は次のものを持っています:

@Html.ActionLink("Customer Number", "Search", new { Search = ViewBag.Search, q = ViewBag.q, sortOrder = ViewBag.CustomerNoSortParm, })

両方のビューバッグプロパティがURLから取得されている場合:

http://localhost:51488/Home/Search?Search=Postcode&q=test&sortOrder=CustomerNo

ただし、生成されるURLは次のとおりです。

http://localhost:51488/Home/Search?sortOrder=CustomerNo

どちらのViewBag値も取得しません。

4

2 に答える 2

1

ViewBagはURLから取得されません。それはコントローラーのアクションから来ています。Requestクエリ文字列パラメータまたはPOSTリクエストの一部であるパラメータをフェッチする場合は、 :を使用できます。

@Html.ActionLink(
    "Customer Number", 
    "Search", 
    new { 
        Search = Request["Search"], 
        q = Request["q"], 
        sortOrder = Request["CustomerNoSortParm"] 
    }
)
于 2012-05-15T13:25:10.063 に答える
0

ViewBagを使用すると、コントローラーからビューにデータを共有できます。

URLのデータを使用してリンクを作成する場合は、コントローラーのアクションのFormCollectionを使用するか(コントローラー内にリンクを作成する場合)、またはHttpContext(ビューからアクセス可能)を直接使用する必要があります。

System.Web.HttpContext.Current.Request.QueryString["Search"]
于 2012-05-15T13:34:09.607 に答える