2012-07-13 95 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推断出你的基础的类型想要的模板。

相关问题