動作控制器是否可以接受文字對象。例如,我有幾個視圖,我想將各種模型發佈到單個控制器,然後可以確定傳入的模型對象以進行進一步處理。作爲動作控制器的參數的對象?
型號樣品:
public class Model1
{
// properties, etc.
}
public class Model2
{
// properties, etc.
}
public class Model3
{
// properties, etc.
}
控制器樣品:
[HttpPost]
public ActionResult ProcessModel(Object anyModel)
{
// determine the model
if((anyModel as Model1) != null)
{
var model1 = anyModel as Model1;
// continue with code
}
else if((anyModel as Model2) != null)
{
var model2 = anyModel as Model2;
// continue with code
}
// continue with model check, etc.
}
我試過,但我的控制器不出現我的對象參數留空是撿模型。這可能嗎?
我不認爲你可以有多個具有相同名稱的動作(不管參數)。 – zimdanen
參數必須是不同的類型。 http://csharpindepth.com/Articles/General/Overloading.aspx –
雖然只是重新閱讀你的評論(可能是我睡覺的時間)@zimdanen - yep ...雖然你可以肯定有重載方式和Actions *應該*只是方法我從來沒有真正做到這一點,所以不知道如果MVC或模型綁定將barf –