public static async Task <V> FindByIdAsync <V, S>(this IViewReadService <V, S> service, long id, Requester requester)
            where V : IIdView where S : IConstrainedSearcher, new()
        {
            var search = new S();

            search.Ids.Add(id);
            return((await service.SearchAsync(search, requester)).OnlySingle());
        }
Esempio n. 2
0
 /// <summary>
 /// A special intermediate function for converting string chaining into real chaining. One extra step as shortcut:
 /// convert view service and requester to proper Func
 /// </summary>
 /// <param name="chainData"></param>
 /// <param name="service"></param>
 /// <param name="requester"></param>
 /// <param name="previousChains"></param>
 /// <typeparam name="S"></typeparam>
 /// <typeparam name="V"></typeparam>
 /// <returns></returns>
 protected Task ChainStringAsync <S, V>(ChainRequestString chainData, IViewReadService <V, S> service, Requester requester, List <List <IIdView> > previousChains)
     where S : IConstrainedSearcher where V : IIdView
 {
     return(ChainStringAsync <S, V>(chainData, (s) => service.SearchAsync(s, requester), previousChains));
 }