2015-10-15 81 views
0

這是我的LINQ:LINQ的記錄,以字符串數組

var context = new CYGNETEntities(); 
var users = (from u in context.mUsers 
      where u.userName == EmailID && u.password == Password 
      select new 
      { 
       u.userName, 
       u.firstName, 
       u.lastName 
      }) 
    .AsEnumerable() 
    .Select(x => string.Format("{0}, {1}, {2}", x.userName, x.firstName, x.lastName)) 
    .ToArray(); 

這裏,將實際值低於:

u.userName = "admin" 
    u.firstName = "fname" 
    u.lastName = "lname" 

所以,LINQ如下返回:

users[0] = admin, fname, lname 

但是我想要在字符串數組中的linq記錄如下:

users[0] = admin 
    users[1] = fname 
    users[2] = lname 

有什麼建議嗎?

+0

您可以用逗號用戶陣分裂,你會得到你的結果。 – NewbieProgrammer

+0

這必須是一個二維數組,以防你有兩個結果具有相同的'EmailID'和'Password' – fubo

回答

2

我沒有測試過這一點,但什麼:

var users = (from u in context.mUsers 
       where u.userName == EmailID && u.password == Password 
       from s in new string [] { u.username, u.FirstName, u.LastName } 
       select s).ToArray(); 
+0

他使用'SelectMany',所以他需要'.ToArray()'。 – Enigmativity

相關問題