我正在尝试完成表达式功能替代方案
private static Expression<Func<UserProfile, bool>> CompareFilter(FilterViewModel f)
{
...
}
Run Code Online (Sandbox Code Playgroud)
在这一个:
private static bool CompareFilter(UserProfile profile, FilterViewModel filter)
{
if (filter.FirstName != null)
{
if (profile.FirstName != null)
{
if (profile.FirstName.CompareTo(filter.FirstName) != 0)
{
return false;
}
}
else
{
return false;
}
}
if (filter.TownId != null)
{
if (profile.TownId != filter.TownId)
{
return false;
}
}
// true if at least one of the filter interests match
if (filter.InterestsIds != null)
{
var firstInterestFound = profile.Interests
.Where(i => …Run Code Online (Sandbox Code Playgroud)