public ActionResult EditClient(ClientViewModel model)
        {
            Message message = new Message();

            message.Success = true;

            if (!ModelState.IsValid)
            {
                message.Success = false;
                message.Content = ModelStateError();
                return(Json(message));
            }
            if (string.IsNullOrEmpty(model.Id))
            {
                message.Success = false;
                message.Content = "Edit fail:Id is null ";
                return(Json(message));
            }
            try
            {
                //先删除,再新增
                var clientDelete = _clientContext.Clients.FirstOrDefault(c => c.Id == new Guid(model.Id));
                _clientContext.Remove(clientDelete);

                #region Add Client
                Client client = new Client();
                client.ClientId       = model.ClientId;
                client.ClientName     = model.ClientName;
                client.ClientUri      = model.ClientUri;
                client.Flow           = (Flows)(System.Convert.ToInt32(model.Flow));
                client.RequireConsent = model.RequireConsents;

                if (!string.IsNullOrEmpty(model.ClientSecret))
                {
                    client.ClientSecrets = new List <Secret>()
                    {
                        new Secret(model.ClientSecret.Sha256())
                    };
                }
                if (!string.IsNullOrEmpty(model.RedirectUri))
                {
                    client.RedirectUris = model.RedirectUri.Split(new string[] { "\r\n" }, StringSplitOptions.RemoveEmptyEntries).ToList();
                }
                client.AllowedScopes = new List <string>
                {
                    StandardScopes.OpenId.Name,
                    StandardScopes.Profile.Name,
                    StandardScopes.Email.Name,
                    StandardScopes.Roles.Name,
                    "dpcontrolapiscope"
                };

                AddClients(client);
                #endregion
            } catch (Exception e)
            {
                message.Success = false;
                message.Content = "Edit failed :" + e.Message;
            }

            return(Json(message));
        }