我已經做了動態LINQ表達類似下面如何設置爲加入IQueryable的<T> LINQ表達
private static List<Employee> FilterData(
IQueryable<system> systemData,
IQueryable<employee> employeeData)
{
var filterData = systemData.Join(
employeeData,
s => s.id, em => em.system_id,
(systemEntity, employeeEntity) => new { employee = employeeEntity});
}
如何做以下聯接,當我使用通用的加入? 如何實現S => s.id,EM => em.system_id
private static List<TEntity> FilterData(
IQueryable<T> systemData,
IQueryable<TEntity> employeeData)
{
//var filterData = systemData.Join(
// employeeData,
// s => s.id, em => em.system_id,
// (systemEntity, employeeEntity) => new { employee = employeeEntity});
}
提供T和TEntity是FilterData的類型參數,您需要增加通用公司nstraints,以便它們基於具有id(用於系統)和system_id(用於員工)定義的類型 –
使用IQueryable編譯器知道來自systemData的屬性...使用IQueryable 編譯器不能知道T具有Property id或system_id –
Noren
可能的解決方案是什麼? – Neo