Provo a creare una query di join di linq in nopCommerce 3.0. Mi unisco a due tavolo in linq e scrivereUn'espressione lambda con un corpo di istruzioni non può essere convertita in un albero di espressioni in nopCommerce
il codice con successo. ma lo studio intellicence visual mostra l'errore come
un'espressione lambda con un corpo dichiarazione non può essere convertito in un albero di espressione
, vedere il mio codice qui sotto
var roles = _customerEventRoleRepository.Table.Where(c => c.EventId == selevent)
.Join
(
_customerRepository.Table,
cev => cev.CustomerId, c => c.Id,
(cev, c) =>
{
var cust = new CustomerEventRolesModel();
cust.Id = cev.Id;
cust.CustomerId = c.Id;
cust.Customer = c.Email;
cust.ContactName = c.GetAttribute<string>(SystemCustomerAttributeNames.FirstName);
cust.CompanyName = c.GetAttribute<string>(SystemCustomerAttributeNames.Company);
cust.Speaker = cev.IsSpeaker;
cust.Sponsor = cev.IsSponser;
return cust;
}
).OrderBy(cev => cev.Customer).ToList();
ma l'errore mostra
please help
Il lambda è una funzione. Questa funzione non può essere convertita in SQL. Devi trovare un altro modo per fare ciò che stai facendo. –
Grazie per la tua risposta valutabile. qui ContactName e CompanyName sono necessari nel risultato della query. –