2014-05-14 82 views
1

我有這樣一個模型:子類的屬性

​​

而在我用它來創建一個新的A的觀點,我傳給:

@model MyProject.ClassA 

,但我想有一個領域ClassB的,如:

@Html.TextBoxFor(model => model.ClassB.nameB) 
@Html.ValidationMessageFor(model => model.ClassB.nameB) 

顯示正確的領域,但所需的控制不工作,並在控制器中的Http發佈操作該字段總是== null。 這是正常的行爲? 任何想法,使其工作? Thx!

回答

0

這些成員需要是公共財產,而不是領域。試試這個:

public class ClassA 
{ 
    public int property1 { get; set; } 
    public ClassB elementB { get; set; } 
} 

public class ClassB 
{ 
    [Required] 
    public int nameB { get; set; } 
} 

操作:

[HttpPost] 
public ActionResult Index(ClassA a) 
{ 
    if (ModelState.IsValid) 
    { 

    } 
} 
+0

是對不起,我忘了,但他們已經公開^^ – Lempkin