0

如果我请求如下 URL:/Offers/Create?Provider=Nicholas Associates&ProviderID=2&PlacementModal=1

在这个请求的视图中,是一个表单。我想要做的是确保我的表单操作值采用它正在显示的视图的 URL,包括传递的参数。

例如:

<form action="/Offers/Create?Provider=Nicholas Associates&ProviderID=2&PlacementModal=1">

我努力了:

@using (Html.BeginForm("Create" + Request.QueryString, "Manage", FormMethod.Post))

但它正在输出:

<form action="Offers/Create%3fProvider%3dNicholas%2520Associates%26ProviderID%3d2%26PlacementModal%3d1%26_%3d1370350965816">

如何阻止它转义 URL?

4

1 回答 1

0

如果您的视图对应于您的发布操作(意味着表单的视图操作是Manage/Create并且您的发布操作是Manage/Create,您可以这样做

@using (Html.BeginForm())

将采用查询字符串。

现在,如果你想发布到另一个动作,你可以做

@{ var queryStringDictionary = new RouteValueDictionary(Request.QueryString.AllKeys.ToDictionary(key => key, key => (object) Request.QueryString[key])); }

@using (Html.BeginForm("Create", "Offers",queryStringDictionary, FormMethod.Post))
于 2013-06-04T13:19:32.013 回答