我在这里看到了几个答案,但它并没有帮助我解决问题。我有使用System.Linq和使用System.Data.Entity(灰色)。我有:
Movie
它希望我在IGlobalTableRepository中创建它:
export class Movie {
constructor(private id: number, private movieName: string, private genre: string) {}
}
我在IGlobalTableRepository中有这个:
internal virtual GlobalTable GetGlobalTableById(int newTableId)
{
return UnitOfWork.GlobalTableRepository.Get(
x => x.NewTableId == newTableId).FirstOrDefault();
}
但这之后又产生了另一个问题。我在这里坚持选择。
以下是存储库中的一个类:
object Get(Func<object, object> p);
答案 0 :(得分:0)
问题是方差如何与C#中的代理一起使用。您不能将该lambda用作Func<object, object>
,因为它访问的x
成员不是object
的成员。您需要将lambda表达式的x
强制转换为其特定类型。
像
x => ((MyType)x).Member == foo