1

這是一種簡單的應用程序,但我對ASP.NET MVC有點新,所以我在包裝我的頭部時遇到了一些麻煩,因爲從分隔的字符串填充列表屬性

我有什麼是兩類:

public class BugAssignment 
{ 
    public int BugAssignmentID { get; set; } 
    public int BugNumber { get; set; } 
    public int UserID { get; set; } 
    public virtual User User { get; set; } 
} 

public class BugAssignmentList 
{ 
    public int BugAssignmentListID { get; set; } 
    public string Name { get; set; } 
    public List<BugAssignment> BugAssignments { get; set; } 
} 

我想要做的就是從填充(即208576403)給出BugNumbers的用戶輸入分隔字符串BugAssignments的名單。我猜它會爆炸字符串,循環遍歷並創建BugAssignment對象,存儲到列表中並設置BugAssignments屬性。我怎麼能做到這一點?

此外,我使用實體框架Code-first與SQL Server 2008作爲我的數據庫引擎。

回答

2

如果你被困在字符串轉換爲字符串數組...

拆分逗號分隔字符串轉換成字符串對象的數組是非常簡單的使用C#中String.Split()

string[] StringArray = String.Split(BugAssignments , ",".ToCharArray(), StringSplitOptions.RemoveEmptyEntries); 

從那裏,它應該是直接循環數組,並做其餘的工作。如果你被困在不同的部分,請告訴我們。

+0

香港專業教育學院編寫的後續問題,如果你有任何想法是怎麼回事錯在這裏,請回復,謝謝。 http://stackoverflow.com/questions/13730521/setting-selected-property-in-selectlist-for-each-object-in-collection-based-on-s – Josh

1

使用string.Split和LINQ的選擇,這裏是你怎麼能寫:

string BugNumbers = "208,576,403"; 
int currentUserID = 0; 

BugAssignmentList list = new BugAssignmentList 
{ 
    BugAssignments = BugNumbers.Split(',') 

     // convert list of numbers to list of BugAssignment objects 
     .Select(num => new BugAssignment 
     { 
      BugNumber = int.Parse(num.Trim()), 
      UserID = currentUserID 
     }) 
     .ToList(), 
    Name = "assignment list name" 
}; 
+0

感謝您的回覆,我寫了一個後續問題如果你可以看看。 http://stackoverflow.com/questions/13730521/setting-selected-property-in-selectlist-for-each-object-in-collection-based-on-s – Josh

相關問題