我向SurfaceController的动作“提交”提交了一个表单。保存数据后,使用MVC RedirectToAction重定向到另一个动作'LeadContact',并将Id作为参数传递给它。在'LeadContact'模型正在填充并传递给'LeadContact'视图。
不确定我是否正确操作但是当'LeadContact'在浏览器中呈现时它会修改URL。浏览器显示类似http://name:50656/umbraco/Surface/HealthInsurance/LeadContact?leadOptionId=70
的网址,而我希望它应该是
http://name:50656/HealthInsurance/LeadContact?leadOptionId=70
你能指导我能纠正吗?以下是我的代码:
public ActionResult Submit(FormCollection form)
{
//Some logic and later redirect to another action 'LeadContact'
return RedirectToAction("LeadContact", new { leadOptionId = _id});
}
public ActionResult LeadContact(int leadOptionId)
{
MyViewModel model = new MyViewModel();
//Lines of code to populate data into model
return View("LeadContact", model);
}
感谢您的帮助和分享。
答案 0 :(得分:0)
将以下重写规则添加到config \ UrlRewriting.config:
<add name="LeadContactRewrite"
virtualUrl="^/HealthInsurance/LeadContact(.*)"
rewriteUrlParameter="ExcludeFromClientQueryString"
destinationUrl="~/umbraco/Surface/HealthInsurance/LeadContact?$1"
ignoreCase="true" />
回收IIS,您应该可以转到http://name:50656/HealthInsurance/LeadContact?leadOptionId=70
并获得所需的结果。