internal static async Task<DeviceProvider> Create(Guid id, Environment environment, IEnvironmentService service) { service.ValidateNonNull(nameof(service)); var info = await service.DeviceProvider(id); var result = new DeviceProvider(environment, service, id, info.Name, info.Description); await AddDevices(environment, service, info.DeviceIds, result.Devices); return result; }