我想SqlFunctions.StringConvert()
在我的解决方案中的不同项目中的许多地方使用。
我不希望每个项目都引用,system.data.entity
所以我决定在我的Common
项目中放置一个包装器(所有其他项目都有引用Common
)。
我怎么能写这样的包装?如果我在做:
public static class SqlUtils
{
public static Func<decimal?, string> StringConvert()
{
return x => SqlFunctions.StringConvert(x);
}
public static Func<double?, string> StringConvert()
{
return x => SqlFunctions.StringConvert(x);
}
}
然后我不能像这样使用它:
query.Where(x => SqlUtils.StringConvert((decimal)x.SerialNumber).Contains(serialNumber));
因为实体框架不知道 SqlUtils.StringConvert 方法。
任何想法如何做到这一点?