Aşağıdaki kodda neden aşağıdaki hatayı alıyorum?LINQ ile genel bir listeden özel bir nesne nasıl alınır?
Özel bir nesneyi, kendi türünün Genel Listesine koyarsam IEnumerable'ın halledileceğini düşündüm. Üzerinde LINQ kullanmak için bu listeye başka ne yapmalıyım?
dolaylı türünü dönüştürülemez 'System.Collections.Generic.IEnumerable
<TestLinq23.Customer>
' için 'TestLinq23.Customer'
using System;
using System.Collections.Generic;
using System.Linq;
namespace TestLinq23
{
class Program
{
static void Main(string[] args)
{
List<Customer> customerSet = new List<Customer>();
customerSet.Add(new Customer { ID = 1, FirstName = "Jim", LastName = "Smith" });
customerSet.Add(new Customer { ID = 2, FirstName = "Joe", LastName = "Douglas" });
customerSet.Add(new Customer { ID = 3, FirstName = "Jane", LastName = "Anders" });
Customer customerWithIndex = customerSet[1];
Console.WriteLine("Customer last name gotten with index: {0}", customerWithIndex.LastName);
Customer customerWithLinq = from c in customerSet
where c.FirstName == "Joe"
select c;
Console.WriteLine(customerWithLinq.LastName);
Console.ReadLine();
}
}
public class Customer
{
public int ID { get; set; }
public string FirstName { get; set; }
public string LastName { get; set; }
}
}
Bir kaydın var olmaması için geçerliyse * OrDefault() değişkenlerine de ihtiyaç duyabilir. –
Evet, bunu cevaba ekleyeceğim. –
Ayrıca bir yüklemi alarak aşırı yükünü de unutmuştum - daha basit :) –