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); }
/// <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; }
/// <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); }
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"); } }