2012-02-05 25 views
1

我原以爲這是一個相當普遍的問題,所以希望很容易解決。ASP MVC可以自動綁定到我的EF4.1實體的集合屬性

我有一個基本的用戶類,如:

public class User 
{ 
     public User() 
     { 
      SecurityGroups = new HashSet<SecurityGroup>(); 
     } 

     public virtual Team Team { get; set; } 
     public int TeamId {get;set;} 

     public virtual ICollection<SecurityGroup> SecurityGroups { get; set; } 
} 

我然後通過ASP MVC應用程序創建一個新的實例。要返回的數據後是一樣的東西

"TeamId=2&SecurityGroups=1&SecurityGroups=5" 

與控制器的動作像

public ActionResult(User user) 
{ 
throw new NotImplementedException(); 
} 
在此基礎上的MVC粘結劑但是被填充TeamId財產精細,

(可以理解),它不知道如何填充SecurityGroups。

我想知道的是,是否有可能以類似於默認綁定器可以自動填充的TeamId的方式擁有「原始集合」?例如

public ICollection<int>SecurityGroupIds {get;set;} 

感謝您的幫助

回答

1

假設你有:

public ICollection<int> SecurityGroupIds { get;set; } 

你可以填充它是這樣的:

TeamId=2&SecurityGroupIds=1&SecurityGroupIds=2&SecurityGroupIds=3 

或者你也可以填充複雜的集合對象:

TeamId=2 
SecurityGroups[0].SomeProperty=value1 
SecurityGroups[1].SomeProperty=value2 
... 

查看following article以瞭解有關默認模型聯編程序對集合和字典所需的連線格式的更多信息。

相關問題