Razor表示法中的模拟是什么?

时间:2011-03-16 17:30:23

标签: c# asp.net-mvc razor

所以,在DotNetOpenAuth的例子中,我在aspx中有表单:

<form action="Authenticate?ReturnUrl=<%=HttpUtility.UrlEncode(Request.QueryString["ReturnUrl"]) %>" method="post" id="openid_form" %>

</form>

在Razor中它的aspx类似于什么?

@using (Html.BeginForm(---???---)) {}

---更新---

感谢大家的建议,答案是:

@using (Html.BeginForm("Authenticate", "Account", FormMethod.Post, 
        new { target = "_top", id = "openid_form" })){}

2 个答案:

答案 0 :(得分:4)

您无需致电BeginForm;你仍然可以在Razor中写下<form>个标签。

发布到MVC路由时使用

BeginForm 如果这是一个MVC动作,你可以写

@using(Html.BeginForm("Authenticate", new { ReturnUrl = Request.QueryString["ReturnUrl"] }))

答案 1 :(得分:0)

<form action="Authenticate?ReturnUrl=@Request.QueryString["ReturnUrl"]" method="post" id="openid_form" %>

</form>

有多种方法可以做到这一点,尽管这是最贴近您发布的示例代码的最简洁方式。