2011-04-15 102 views

回答

1

查看模型和控制器操作參數不必一致。

在你的情況下,這意味着你可能使用更豐富的模型類來生成你的視圖(甚至可能發佈超過需要的信息),但你的控制器動作只會使用來自發布數據的一些信息來填充更簡單的應用程序模型對象實例。沒問題。只要字段命名足以正確填充屬性。

你可能有這兩個類:

public class User 
{ 
    [Required] 
    public string Username { get; set; } 

    [Required] 
    public string Password { get; set; } 
} 

public class Person: User 
{ 
    public string Name { get; set; } 

    public string Address { get; set; } 
} 

,然後你的看法是使用Person和你的控制器動作將有User類型的參數。精細。它會工作。

這些類不需要彼此繼承。我在這個簡單的例子中就這樣做了,因爲這樣它們都共享公共屬性名稱。但是,只要發佈的字段名稱能夠建模綁定到控制器動作參數類屬性,它們就不必以任何形式或形式關聯。