Tôi muốn chuyển đổi một danh sách các thuộc tính của người sử dụng vào chuỗi mảng (đối với máy thu json) như:Làm thế nào để có được kết quả LINQ như mảng chuỗi?
List<User> users = <..list of users from db...>
var jsonData = (
from user in users
select new { user.Id, user.Person.Lastname, user.Person.Firstname });
return Json(jsonData)
Kết quả là một mảng có tên là lĩnh vực
[{"Id":1,"Lastname":"Doe","Firstname":"John"},{"Id":2,"Lastname":"Smith","Firstname":"Adam"},...]
nhưng tôi muốn nó được mảng mảng của các chuỗi đơn giản như:
[["1","Doe","John"]
["2","Smith","Adam"], ...]
Làm thế nào để truyền kết quả LINQ vào mảng chuỗi?
cảm ơn, cả hai đề xuất của bạn đều hoạt động tốt :) Dù sao, tôi đã thử một mảng chuỗi như vậy trước đây, nhưng kết thúc với một số lỗi chỉ mục lạ. Cùng với mã của bạn, sau đó tôi nhận ra rằng nguồn dữ liệu của tôi đã trả về đối tượng IQueryable là vấn đề - users.ToList() đã giải quyết vấn đề này. Dù sao, câu trả lời của bạn là hữu ích để có được điều này. Cảm ơn. – twk
FYI, giải pháp chính xác này không hoạt động đối với tôi vì tôi có các kiểu số được trộn lẫn. (Tôi gặp lỗi khi trình biên dịch không thể xác định loại mảng.) Nhưng tôi đã sử dụng "đối tượng mới []" và điều này giải quyết được vấn đề của tôi. – mpontillo
@Mike: Vâng, đó là lý do tại sao tôi đã gọi '. ToString()' trên 'user.Id' mà tôi giả định là một số nguyên. Để 'new []' hoạt động, trình biên dịch có thể suy ra kiểu mảng từ các đối tượng được truyền cho nó. Nếu các kiểu của chúng không tương thích, trình biên dịch sẽ phàn nàn. –