Example #1
0
        public static EditServiceJson CreateFrom(PrimetonDescriptorViewModel model, JsonTemplateNames partName)
        {
            var serviceJson = new EditServiceJson
            {
                ServiceDescriptor = JsonConvert.SerializeObject(model),
                CurrentPath       = "",
                CurrentName       = partName
            };

            switch (partName)
            {
            case JsonTemplateNames.PrimetonParameter:
                serviceJson.CurrentJson = JsonConvert.SerializeObject(model.InputBody);
                break;

            case JsonTemplateNames.PrimetonReturn:
                serviceJson.CurrentJson = JsonConvert.SerializeObject(model.ReturnBody);
                break;

            default:
                throw new Exception("传入了非普元系统Web服务类型的部位参数" + partName.ToString());
            }

            return(serviceJson);
        }
Example #2
0
        /// <summary>
        /// 假定uiViewModel参数是来自用户视图的数据控件绑定模型,
        /// 而当前实例是一个从数据库或视图状态中恢复出来的老模型,
        /// 那么,应当运行本方法完成用户可能发生的输入更改。
        /// 注意:本方法仅更新那些绑定到了视图上的form control的值。
        /// </summary>
        /// <param name="uiViewModel"></param>
        public void UpdateFromUI(IServiceDescriptorViewModel uiViewModel)
        {
            PrimetonDescriptorViewModel viewModel = (PrimetonDescriptorViewModel)uiViewModel;

            this.ActiveStatus   = viewModel.ActiveStatus;
            this.Operation      = viewModel.Operation;
            this.ServiceName    = viewModel.ServiceName;
            this.ServiceAddress = viewModel.ServiceAddress;
            this.Prefix         = viewModel.Prefix;
            this.Namespace      = viewModel.Namespace;
        }
Example #3
0
        /// <summary>
        /// 从一个EsbService定义中创建一个视图模型并返回。
        /// </summary>
        /// <param name="service"></param>
        /// <returns></returns>
        public static PrimetonDescriptorViewModel CreateFrom(EsbService service)
        {
            if (service.Type != ServiceType.PrimetonService)
            {
                throw new Exception("服务不是股份普元服务类型的。");
            }

            var model = JsonConvert.DeserializeObject <PrimetonDescriptorViewModel>(service.ServiceDescriptor);

            if (model == null)
            {
                model = new PrimetonDescriptorViewModel();
            }
            model.ServiceID    = service.ID;
            model.ServiceName  = service.Name;
            model.ActiveStatus = service.ActiveStatus == 1;

            return(model);
        }
Example #4
0
 public static EditServiceJson CreateFrom(EsbService service, JsonTemplateNames partName)
 {
     if (service.Type == ServiceType.SimpleRESTful)
     {
         return(EditServiceJson.CreateFrom(SimpleRestfulDescriptorViewModel.CreateFrom(service), partName));
     }
     else if (service.Type == ServiceType.NCWebService)
     {
         return(EditServiceJson.CreateFrom(NCDescriptorViewModel.CreateFrom(service), partName));
     }
     else if (service.Type == ServiceType.PrimetonService)
     {
         return(EditServiceJson.CreateFrom(PrimetonDescriptorViewModel.CreateFrom(service), partName));
     }
     else
     {
         throw new Exception("not impleted service type");
     }
 }