system.agegrateException: один или несколько ошибок (метод не вводится на тип Slt.assets.extensions.linqextensions 'indable -argements. /> < /blockquote>
Количество аргументов в методе реализации соответствует количеству аргументов из расширения, насколько я вижу. < /p>
Я не могу понять, чего мне не хватает. Расширение раскрывает 3 параметра, а метод выражения принимает 3 значения. < /P>
Вот мой код: < /p>
Код: Выделить всё
public interface IDbGroups
{
[Required]
string Groups { get; set; }
}
public enum MatchTypes
{
None,
Match,
All
}
public static MatchTypes ListMatches(string list, string values)
{
...
}
[Expandable(nameof(Predicates.InGroupsImpl))]
public static bool DbInGroups(this IDbGroups item, string values)
=> throw new NotSupportedException();
public static Expression InGroupsImpl()
=> (item, values) => DbUtility.ListMatches(item.Groups, values) != MatchTypes.None;
< /code>
Использование: < /p>
cache.Settings = await db.GetWorker().WhereAsync(s => s.AppId.Equals(cache.App.Id) || s.AppId == null && s.DbInGroups(Setting.DefaultGroupName).Equals(MatchTypes.All));
Подробнее здесь: https://stackoverflow.com/questions/797 ... ng-linqkit
Мобильная версия