示例#1
0
 /// <inheritdoc />
 Task<Recipe> IRepository<int, Recipe>.FindAsync(int identifier, CancellationToken cancellationToken)
 {
     IRecipeRepository self = this;
     var request = new RecipeDetailsRequest
     {
         RecipeId = identifier,
         Culture = self.Culture
     };
     var responseTask = this.serviceClient.SendAsync<RecipeDataContract>(request, cancellationToken);
     return responseTask.ContinueWith(
         task =>
         {
             var recipe = this.ConvertsAsyncResponse(task);
             recipe.Culture = request.Culture;
             return recipe;
         },
     cancellationToken);
 }
示例#2
0
        /// <inheritdoc />
        Recipe IRepository<int, Recipe>.Find(int identifier)
        {
            IRecipeRepository self = this;
            var request = new RecipeDetailsRequest
            {
                RecipeId = identifier,
                Culture = self.Culture
            };
            var response = this.serviceClient.Send<RecipeDataContract>(request);
            if (response.Content == null)
            {
                return null;
            }

            var recipe = this.converterForRecipe.Convert(response.Content, null);
            recipe.Culture = request.Culture;
            return recipe;
        }