這對我來說不是一個重要的概念,但我只是想知道如果我可以在linq
select
聲明之後強制鍵入一個新對象,而不是使其成爲匿名類型,請參見C#
。下面是一個樣品,被禁當然但講的概念:
LINQ選擇語句後的強類型新對象
public class DisplayAddress { public int AddressId; public string ShortAddress; }
List<DisplayAddress> shortAddresses =
(from la in longAddresses
join ca in customerAddresses
on la.AddressId equals ca.AddressId
where ca.CustomerId == selectedCustomer
select new { new DisplayAddress() {AddressId = la.AddressId, ShortAddress = la.Line1 + " " + la.City + " " + la.State}}).Tolist<DisplayAddress>();
我覺得你這得太多。只需選擇新的DisplayAddress {AddressId = la.AddressId,...} –
爲什麼要創建一個匿名類型而不是隻選擇新的DisplayAddress? – itsme86
'select new'語句甚至不應該編譯。你沒有在匿名類型中聲明任何成員 –