2012-07-13 94 views
0

我有叫myobjectobject類型的項目模型:如何獲取我模型中對象類型的值?

public class myModel 
{ 
    public long id {get;set;} 
    public object myobject {get;set;} 
} 

在我看來,我用EditorFor與模板編輯myobject

@model myModel 
// form (code omitted) 
@Html.EditorFor(model => model.myobject) 

<button type="submit">Save</button> 

這是模板:

@model myObject 

@Html.EditorFor(model => model.myname) 

如何在控件中獲取myModel.myobject值米勒? 我試着投,但我得到這個錯誤:

Unable to cast object of type 'System.Object' to type 'MyProject.Models.myobject'.

+0

你在控制器操作中默認使用Model.XXXX – HatSoft 2012-07-13 15:50:37

+1

你可以發佈控制器的代碼嗎? – 2012-07-13 15:51:46

+0

public PartialViewResult保存(myModel模型) { //這裏我需要model.myobject !!! } – User907863 2012-07-13 15:54:55

回答

1

該模型中的屬性是object類型:

public object myobject { get; set; } 

你EditorTemplate是myObject型 - 不是object類型:

@model myObject <-- This little thing is responsible telling MVC what editor template to use with which type. 

@Html.EditorFor(model => model.myname) 

這就是爲什麼你沒有得到你正在尋找的實現。

作爲替代,您可以使用一個名爲 EditorTemplate而不是讓MVC推斷出你的基礎的類型想要的模板。

相關問題