コード例 #1
0
ファイル: SelectionModule.cs プロジェクト: darrenferne/stuff
        public SelectionModule(IDataServiceHostSettings dshs, ILimitsRepository limitsRepository)
            : base("ext/selection")
        {
            _dshs         = dshs;
            _repository   = limitsRepository;
            _queryBuilder = new SelectionQueryBuilder();

            Get["/{id}", true] = async(args, ct) =>
            {
                long selectionId = args.id;

                return(await Task.Run(() =>
                {
                    var hostUrl = string.Empty;
                    var selection = _repository.Get <Domain.Models.Selection>(selectionId);
                    var query = _queryBuilder.GetQuery(selection);
                    var client = new DataServiceClient(hostUrl, LoginCredentials.FromToken(_dshs.SystemToken));

                    var result = client.QueryAsync(query, selection.SourceSystem).Result;

                    return Response.AsJson(result);
                }));
            };
        }