public WsdlTemplateBase GetWsdlTemplate(XsdMetadata operations, string baseUri, bool optimizeForFlash, string rawUrl) { var xsd = new XsdGenerator { OperationTypes = operations.GetAllTypes(), OptimizeForFlash = optimizeForFlash, }.ToString(); var wsdlTemplate = GetWsdlTemplate(); wsdlTemplate.Xsd = xsd; wsdlTemplate.ReplyOperationNames = operations.GetReplyOperationNames(); wsdlTemplate.OneWayOperationNames = operations.GetOneWayOperationNames(); if (rawUrl.ToLower().StartsWith(baseUri)) { wsdlTemplate.ReplyEndpointUri = rawUrl; wsdlTemplate.OneWayEndpointUri = rawUrl; } else { var suffix = GetType().Name.StartsWith("Soap11") ? "soap11" : "soap12"; wsdlTemplate.ReplyEndpointUri = baseUri + suffix; wsdlTemplate.OneWayEndpointUri = baseUri + suffix; } return wsdlTemplate; }
public WsdlTemplateBase GetWsdlTemplate(XsdMetadata operations, string baseUri, bool optimizeForFlash, string rawUrl, string serviceName) { var xsd = new XsdGenerator { OperationTypes = operations.GetAllTypes(), OptimizeForFlash = optimizeForFlash, }.ToString(); var soapFormat = GetType().Name.StartsWith("Soap11", StringComparison.OrdinalIgnoreCase) ? Format.Soap11 : Format.Soap12; var wsdlTemplate = GetWsdlTemplate(); wsdlTemplate.Xsd = xsd; wsdlTemplate.ServiceName = serviceName; wsdlTemplate.ReplyOperationNames = operations.GetReplyOperationNames(soapFormat); wsdlTemplate.OneWayOperationNames = operations.GetOneWayOperationNames(soapFormat); if (rawUrl.ToLower().StartsWith(baseUri)) { wsdlTemplate.ReplyEndpointUri = rawUrl; wsdlTemplate.OneWayEndpointUri = rawUrl; } else { var suffix = soapFormat == Format.Soap11 ? "soap11" : "soap12"; wsdlTemplate.ReplyEndpointUri = baseUri + suffix; wsdlTemplate.OneWayEndpointUri = baseUri + suffix; } return wsdlTemplate; }
public WsdlTemplateBase GetWsdlTemplate(ServiceOperations operations, string baseUri, bool optimizeForFlash, bool includeAllTypesInAssembly, string rawUrl) { var xsd = new XsdGenerator { OperationTypes = operations.AllOperations.Types, OptimizeForFlash = optimizeForFlash, IncludeAllTypesInAssembly = includeAllTypesInAssembly, }.ToString(); var wsdlTemplate = GetWsdlTemplate(); wsdlTemplate.Xsd = xsd; wsdlTemplate.ReplyOperationNames = operations.ReplyOperations.Names; wsdlTemplate.OneWayOperationNames = operations.OneWayOperations.Names; if (rawUrl.ToLower().Contains("servicestack")) { //var qsPos = rawUrl.IndexOf('?'); //var urlWithoutQueryString = qsPos != -1 ? rawUrl.Substring(0, qsPos) : rawUrl; wsdlTemplate.ReplyEndpointUri = rawUrl; wsdlTemplate.OneWayEndpointUri = rawUrl; } else { wsdlTemplate.ReplyEndpointUri = baseUri + "SyncReply.svc"; wsdlTemplate.OneWayEndpointUri = baseUri + "AsyncOneWay.svc"; } return wsdlTemplate; }
public WsdlTemplateBase GetWsdlTemplate(ServiceOperations operations, string baseUri, bool optimizeForFlash, bool includeAllTypesInAssembly, string rawUrl) { var xsd = new XsdGenerator { OperationTypes = operations.AllOperations.Types, OptimizeForFlash = optimizeForFlash, IncludeAllTypesInAssembly = includeAllTypesInAssembly, }.ToString(); var wsdlTemplate = GetWsdlTemplate(); wsdlTemplate.Xsd = xsd; wsdlTemplate.ReplyOperationNames = operations.ReplyOperations.Names; wsdlTemplate.OneWayOperationNames = operations.OneWayOperations.Names; if (rawUrl.ToLower().StartsWith(baseUri)) { wsdlTemplate.ReplyEndpointUri = rawUrl; wsdlTemplate.OneWayEndpointUri = rawUrl; } else { var suffix = GetType().Name.StartsWith("Soap11") ? "soap11" : "soap12"; wsdlTemplate.ReplyEndpointUri = baseUri + suffix; wsdlTemplate.OneWayEndpointUri = baseUri + suffix; } return wsdlTemplate; }
public void Xsd_output_does_not_contain_xml_declaration() { var xsd = new XsdGenerator { OperationTypes = new[] { typeof(GetCustomer), typeof(GetCustomerResponse), typeof(GetCustomers), typeof(GetCustomersResponse), typeof(StoreCustomer) }, OptimizeForFlash = false, }.ToString(); Assert.That(!xsd.StartsWith("<?")); }
public static void Main() { var xsd = new XsdGenerator { OperationTypes = new[] { typeof(GetUsers), typeof(DeleteAllUsers), typeof(StoreNewUser), typeof(GetFactorial), typeof(GetFibonacciNumbers) }, OptimizeForFlash = false, }.ToString(); Console.WriteLine("xsd: " + xsd); }