2012-02-26 71 views
1

我正在閱讀一本關於ASP.NET MVC3的書來學習使用這個框架。部分視圖的概念被解釋了,儘管它是一個簡單的概念,我對它有一個小問題。某些控制器方法沒有HTTP請求

該剃刀代碼被添加到視圖:

@{ Html.RenderAction("Summary", "Cart"); } 

這將調用概要() - 對CartController方法。問題是:作爲一個用戶,我可以通過HTTP請求(GET/POST,...)調用這個方法,這是不應該的。

我知道有像[HttpPost][HttpGet]屬性只允許某種類型的HTTP請求,但是還有一個屬性來防止這些?另外,我在哪裏可以找到可用屬性列表?

感謝

回答

1

如果你有一個局部視圖,你是正確的,它必須是一個公共方法,但它不應該是可尋址自身。要實現這一目標,你可以裝飾操作方法與[ChildActionOnly]

請參見本作的細節

http://msdn.microsoft.com/en-us/library/system.web.mvc.childactiononlyattribute.aspx

而對於類似屬性的列表:

http://msdn.microsoft.com/en-us/library/system.web.mvc.filterattribute.aspx

+0

感謝,這正是我想要的是! :) – Bv202 2012-02-26 21:30:26