2010-12-23 47 views
2

我想用C#和ASP.Net来实现一个RESTful MVC项目,因此我必须通过请求类型像这样简单的例子来区分方法的控制器:创建RESTful按钮ASP.Net MVC 2

[HttpGet, ActionName("Instance")] 
public ActionResult Get(string id) { 
    //Get 
} 

[HttpPut, ActionName("Instance")] 
public ActionResult Update(string id, Instance instance) { 
    //Update 
} 

[HttpDelete, ActionName("Instance")] 
public ActionResult Delete(string id) { 
    //Delete 
} 

在视图上,我想显示实例并有按钮来更新和删除,这将调用上面的相应操作。创建这些按钮的最佳方法是什么,以便它们使用适当的请求类型生成请求?

回答

3
<%: Html.ActionLink("Get button", "Instance", new { id = "123" }) %> 

<% using (Html.BeginForm("Instance", "ControllerName", new { id = "123" }, FormMethod.Post)) %> 
    <%: Html.HttpMethodOverride(HttpVerbs.Put) %> 
    <%: Html.TextBoxFor(x => x.Prop1) %> 
    <%: Html.TextBoxFor(x => x.Prop2) %> 
    <input type="submit" value="Put button" /> 
<% } %> 

<% using (Html.BeginForm("Instance", "ControllerName", new { id = "123" }, FormMethod.Post)) %> 
    <%: Html.HttpMethodOverride(HttpVerbs.Delete) %> 
    <input type="submit" value="Delete button" /> 
<% } %>