Exemplo n.º 1
0
        public static async Task <nAssembla.Cache.SpaceDataCache> GetSpaceDataCache(string spaceId)
        {
            var dataCache   = new nAssembla.Cache.SpaceDataCache();
            var space       = SpaceProxy.GetAsync(spaceId, true);
            var components  = TicketComponentProxy.GetListAsync(true);
            var fields      = CustomFieldProxy.GetListAsync(true);
            var custReports = CustomReportProxy.GetListAsync(true);
            var statuses    = CustomStatusProxy.GetListAsync(true);
            var milestones  = MilestoneProxy.GetListAsync(true);
            var tools       = SpaceToolProxy.GetListAsync(true);
            var users       = UserProxy.GetListAsync(true);
            var userRoles   = UserRoleProxy.GetListAsync(true);

#if NET4_5
            await Task.WhenAll(space, components, fields, statuses, milestones, tools, users, custReports, userRoles);
#else
            await TaskEx.WhenAll(space, components, fields, statuses, milestones, tools, users, custReports, userRoles);
#endif
            dataCache.Space          = space.Result;
            dataCache.Components     = components.Result;
            dataCache.CustomFields   = fields.Result;
            dataCache.CustomStatuses = statuses.Result;
            dataCache.Milestones     = milestones.Result;
            dataCache.Tools          = tools.Result;
            dataCache.Users          = users.Result;
            dataCache.CustomReports  = custReports.Result;
            dataCache.UserRoles      = userRoles.Result;

            return(dataCache);
        }