示例#1
0
        /// <summary>
        /// 连接配置中心
        /// </summary>
        /// <returns></returns>
        private async Task ConnectConfigCenterAsync()
        {
            try
            {
                var serverManage = ApplicationData.GetService <IServerManage>();
                ResultModel <List <ServerListDTO> > resultModel = await serverManage.GetServerListAsync();

                if (resultModel.ResultType == ResultTypeEnum.Success)
                {
                    ServerListDTO server = resultModel.Data.FirstOrDefault(m => m.ServerCategory == ServerCategoryEnum.ConfigCenter);
                    if (server == null)
                    {
                        throw new ConfigCenterEnvironmentException("获取配置中心服务失败");
                    }
                    ConfigCenterEnvironmentConfig.ConfigCenterUrl = server.Url;
                    ConfigCenterEnvironmentConsoleHelper.WriteLine($"已获取配置中心地址:{ConfigCenterEnvironmentConfig.ConfigCenterUrl}");
                    var configCenterHub = ApplicationData.GetService <IConfigCenterHub>();
                    var registerModel   = new RegisterEnvironmentRequestModel
                    {
                        Name = ConfigCenterEnvironmentConfig.ServerInfo.Name,
                        Url  = ApplicationConfig.PublicUrl,
                        Key  = ConfigCenterEnvironmentConfig.ServerInfo.Key
                    };
                    await configCenterHub.RegisterEnvironment(registerModel);
                }
                else
                {
                    throw new ConfigCenterEnvironmentException("获取配置中心服务失败");
                }
            }
            catch (Exception exception)
            {
                throw new ConfigCenterEnvironmentException("获取配置中心服务失败", exception);
            }
        }
示例#2
0
 /// <summary>
 /// 注册环境
 /// </summary>
 /// <param name="requestModel"></param>
 /// <returns></returns>
 public async Task RegisterEnvironment(RegisterEnvironmentRequestModel requestModel)
 {
     try
     {
         var model = _mapper.Map <RegisterEnvironmentModel>(requestModel);
         _configCenterService.RegisterEnvironment(Context.ConnectionId, model);
         await Clients.Caller.RegisterResult(true, "注册成功");
     }
     catch (ConfigCenterException exception)
     {
         await Clients.Caller.RegisterResult(false, exception.Message);
     }
 }
示例#3
0
 public async Task RegisterEnvironment(RegisterEnvironmentRequestModel requestModel)
 {
     await Connection.InvokeAsync(nameof(RegisterEnvironment), requestModel);
 }