Convert Linq Data query to object type
11,213
Your query returns an IEnumerable<Client>
, you need either FirstOrDefault
, First
, SingleOrDefault
.. look at MSDN for the one that best suits you.
Client query = (from tbclient in dc.tblClients
where tbclient.ClientID == clientID
select new Client
{
Address = tbclient.Address,
ClientID = tbclient.ClientID,
Company = tbclient.Company,
Fax = tbclient.Fax,
Mobile = tbclient.Mobile,
Name = tbclient.Name,
Telephone = tbclient.Telephone
}).FirstOrDefault()
Author by
chamara
ASP.NET, ASP.NET MVC , Sql Server, Bootstrap, CSS and Crystal reports developer
Updated on June 27, 2022Comments
-
chamara almost 2 years
I'm getting the error
"Unable to cast object of type 'System.Data.Linq.DataQuery`1[StockManagement.Models.Client]' to type 'StockManagement.Models.Client'."
public class Client { public int ClientID { get; set; } public string Name { get; set; } public string Address { get; set; } public string Mobile { get; set; } public string Telephone { get; set; } public string Fax { get; set; } public string Company { get; set; } } private StockDataClassesDataContext dc; public Client GetClient(int clientID) { dc = new StockDataClassesDataContext(ConString.DBConnection); Client query = (Client)(from tbclient in dc.tblClients where tbclient.ClientID == clientID select new Client { Address = tbclient.Address, ClientID = tbclient.ClientID, Company = tbclient.Company, Fax = tbclient.Fax, Mobile = tbclient.Mobile, Name = tbclient.Name, Telephone = tbclient.Telephone }); return query; }