{"action":"created","issue":{"url":"https://api.github.com/repos/dotnet/wcf/issues/3227","repository_url":"https://api.github.com/repos/dotnet/wcf","labels_url":"https://api.github.com/repos/dotnet/wcf/issues/3227/labels{/name}","comments_url":"https://api.github.com/repos/dotnet/wcf/issues/3227/comments","events_url":"https://api.github.com/repos/dotnet/wcf/issues/3227/events","html_url":"https://github.com/dotnet/wcf/issues/3227","id":371753908,"node_id":"MDU6SXNzdWUzNzE3NTM5MDg=","number":3227,"title":"dotnet svcutil only creates the Async method ","user":{"login":"markmattes","id":34550416,"node_id":"MDQ6VXNlcjM0NTUwNDE2","avatar_url":"https://avatars3.githubusercontent.com/u/34550416?v=4","gravatar_id":"","url":"https://api.github.com/users/markmattes","html_url":"https://github.com/markmattes","followers_url":"https://api.github.com/users/markmattes/followers","following_url":"https://api.github.com/users/markmattes/following{/other_user}","gists_url":"https://api.github.com/users/markmattes/gists{/gist_id}","starred_url":"https://api.github.com/users/markmattes/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/markmattes/subscriptions","organizations_url":"https://api.github.com/users/markmattes/orgs","repos_url":"https://api.github.com/users/markmattes/repos","events_url":"https://api.github.com/users/markmattes/events{/privacy}","received_events_url":"https://api.github.com/users/markmattes/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":3,"created_at":"2018-10-18T23:39:51Z","updated_at":"2018-12-10T22:41:57Z","closed_at":"2018-10-22T21:44:35Z","author_association":"NONE","body":"I've used the dotnet svcutil from VS 2017 (15.7.5) and also the 1.0.3 version with VS Code. When the Reference.cs is created, it only has the Async method, it doesn't have the synchronous also. I have been using the svcutil for years against our web services and it works fine. \r\nThis is a piece of a wsdl for a sample service operation:\r\n<?xml version=\"1.0\" encoding=\"utf-8\"?>\r\n<wsdl:definitions xmlns:soapenc=\"http://schemas.xmlsoap.org/soap/encoding/\" xmlns:wsaw=\"http://www.w3.org/2006/05/addressing/wsdl\" xmlns:soap=\"http://schemas.xmlsoap.org/wsdl/soap/\" xmlns:tns=\"http://Order.ServiceContracts/2007/07\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\" xmlns:wsam=\"http://www.w3.org/2007/05/addressing/metadata\" xmlns:wsa=\"http://schemas.xmlsoap.org/ws/2004/08/addressing\" xmlns:soap12=\"http://schemas.xmlsoap.org/wsdl/soap12/\" xmlns:msc=\"http://schemas.microsoft.com/ws/2005/12/wsdl/contract\" xmlns:wsap=\"http://schemas.xmlsoap.org/ws/2004/08/addressing/policy\" xmlns:wsp=\"http://schemas.xmlsoap.org/ws/2004/09/policy\" xmlns:wsa10=\"http://www.w3.org/2005/08/addressing\" xmlns:wsu=\"http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd\" xmlns:i0=\"http://tempuri.org/\" xmlns:wsx=\"http://schemas.xmlsoap.org/ws/2004/09/mex\" xmlns:wsdl=\"http://schemas.xmlsoap.org/wsdl/\" targetNamespace=\"http://Order.ServiceContracts/2007/07\" name=\"OrderService\">\r\n  <wsdl:import location=\"http://orionunittest/OrderService.svc?wsdl=wsdl0\" namespace=\"http://tempuri.org/\"/>\r\n  <wsdl:types>\r\n    <xsd:schema targetNamespace=\"http://Order.ServiceContracts/2007/07/Imports\">\r\n      <xsd:import namespace=\"http://Order.ServiceContracts/2007/07\" schemaLocation=\"http://orionunittest/OrderService.svc?xsd=xsd0\"/>\r\n      <xsd:import namespace=\"http://Order.FaultContracts/2007/07\" schemaLocation=\"http://orionunittest/OrderService.svc?xsd=xsd3\"/>\r\n      <xsd:import namespace=\"http://schemas.microsoft.com/2003/10/Serialization/\" schemaLocation=\"http://orionunittest/OrderService.svc?xsd=xsd1\"/>\r\n      <xsd:import namespace=\"http://Order.DataContracts/2007/07\" schemaLocation=\"http://orionunittest/OrderService.svc?xsd=xsd2\"/>\r\n      <xsd:import namespace=\"http://schemas.microsoft.com/2003/10/Serialization/Arrays\" schemaLocation=\"http://orionunittest/OrderService.svc?xsd=xsd4\"/>\r\n    </xsd:schema>\r\n  </wsdl:types>\r\n...\r\n  <wsdl:message name=\"HealthCheckRequest\">\r\n    <wsdl:part name=\"parameters\" element=\"tns:HealthCheckRequest\"/>\r\n  </wsdl:message>\r\n  <wsdl:message name=\"IOrderService_HealthCheck_OutputMessage\"/>\r\n  <wsdl:message name=\"IOrderService_HealthCheck_OrderServiceFaultFault_FaultMessage\">\r\n    <wsdl:part name=\"detail\" element=\"q45:OrderServiceFault\" xmlns:q45=\"http://Order.FaultContracts/2007/07\"/>\r\n  </wsdl:message>\r\n...\r\n    <wsdl:operation name=\"HealthCheck\">\r\n      <wsdl:input name=\"HealthCheckRequest\" message=\"tns:HealthCheckRequest\" wsaw:Action=\"HealthCheck\"/>\r\n      <wsdl:output message=\"tns:IOrderService_HealthCheck_OutputMessage\" wsaw:Action=\"http://Order.ServiceContracts/2007/07/IOrderService/HealthCheckResponse\"/>\r\n      <wsdl:fault name=\"OrderServiceFaultFault\" message=\"tns:IOrderService_HealthCheck_OrderServiceFaultFault_FaultMessage\" wsaw:Action=\"http://Order.ServiceContracts/2007/07/IOrderService/HealthCheckOrderServiceFaultFault\"/>\r\n    </wsdl:operation>\r\n\r\nThis is what I get when I run svcutil (\"C:\\Program Files (x86)\\Microsoft SDKs\\Windows\\v10.0A\\Bin\\NETFX 4.6.1 Tools\\svcutil.exe\") you can see the HealthCheck and HealthCheckAsync declarations:\r\n\r\n        [System.ServiceModel.OperationContractAttribute(Action=\"HealthCheck\", ReplyAction=\"http://Order.ServiceContracts/2007/07/IOrderService/HealthCheckResponse\")]\r\n        [System.ServiceModel.FaultContractAttribute(typeof(Levi.LSA.USDistribution.Orion.ESB.Orchestrator.ServiceReference.OrderService.OrderServiceFault), Action=\"http://Order.ServiceContracts/2007/07/IOrderService/HealthCheckOrderServiceFaultF\" +\r\n            \"ault\", Name=\"OrderServiceFault\", Namespace=\"http://Order.FaultContracts/2007/07\")]\r\n        Levi.LSA.USDistribution.Orion.ESB.Orchestrator.ServiceReference.OrderService.HealthCheckResponse HealthCheck(Levi.LSA.USDistribution.Orion.ESB.Orchestrator.ServiceReference.OrderService.HealthCheckRequest request);\r\n        \r\n        [System.ServiceModel.OperationContractAttribute(Action=\"HealthCheck\", ReplyAction=\"http://Order.ServiceContracts/2007/07/IOrderService/HealthCheckResponse\")]\r\n        System.Threading.Tasks.Task<Levi.LSA.USDistribution.Orion.ESB.Orchestrator.ServiceReference.OrderService.HealthCheckResponse> HealthCheckAsync(Levi.LSA.USDistribution.Orion.ESB.Orchestrator.ServiceReference.OrderService.HealthCheckRequest request);\r\n...\r\n        \r\n        public Levi.LSA.USDistribution.Orion.ESB.Orchestrator.ServiceReference.OrderService.HealthCheckResponse HealthCheck(Levi.LSA.USDistribution.Orion.ESB.Orchestrator.ServiceReference.OrderService.HealthCheckRequest request)\r\n        {\r\n            return base.Channel.HealthCheck(request);\r\n        }\r\n        \r\n        public System.Threading.Tasks.Task<Levi.LSA.USDistribution.Orion.ESB.Orchestrator.ServiceReference.OrderService.HealthCheckResponse> HealthCheckAsync(Levi.LSA.USDistribution.Orion.ESB.Orchestrator.ServiceReference.OrderService.HealthCheckRequest request)\r\n        {\r\n            return base.Channel.HealthCheckAsync(request);\r\n        }\r\n\r\nHowever, when I run dotnet svcutil I just get the Async method:\r\nSystem.Threading.Tasks.Task<Levi.LSA.USDistribution.Orion.Linux.ServiceReference.OrderService.HealthCheckResponse> HealthCheckAsync(Levi.LSA.USDistribution.Orion.Linux.ServiceReference.OrderService.HealthCheckRequest request);\r\n...\r\n public System.Threading.Tasks.Task<Levi.LSA.USDistribution.Orion.Linux.ServiceReference.OrderService.HealthCheckResponse> HealthCheckAsync(Levi.LSA.USDistribution.Orion.Linux.ServiceReference.OrderService.HealthCheckRequest request)\r\n        {\r\n            return base.Channel.HealthCheckAsync(request);\r\n        }        \r\n\r\n\r\n"},"comment":{"url":"https://api.github.com/repos/dotnet/wcf/issues/comments/446002206","html_url":"https://github.com/dotnet/wcf/issues/3227#issuecomment-446002206","issue_url":"https://api.github.com/repos/dotnet/wcf/issues/3227","id":446002206,"node_id":"MDEyOklzc3VlQ29tbWVudDQ0NjAwMjIwNg==","user":{"login":"lsiddiquee","id":15940466,"node_id":"MDQ6VXNlcjE1OTQwNDY2","avatar_url":"https://avatars1.githubusercontent.com/u/15940466?v=4","gravatar_id":"","url":"https://api.github.com/users/lsiddiquee","html_url":"https://github.com/lsiddiquee","followers_url":"https://api.github.com/users/lsiddiquee/followers","following_url":"https://api.github.com/users/lsiddiquee/following{/other_user}","gists_url":"https://api.github.com/users/lsiddiquee/gists{/gist_id}","starred_url":"https://api.github.com/users/lsiddiquee/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lsiddiquee/subscriptions","organizations_url":"https://api.github.com/users/lsiddiquee/orgs","repos_url":"https://api.github.com/users/lsiddiquee/repos","events_url":"https://api.github.com/users/lsiddiquee/events{/privacy}","received_events_url":"https://api.github.com/users/lsiddiquee/received_events","type":"User","site_admin":false},"created_at":"2018-12-10T22:41:57Z","updated_at":"2018-12-10T22:41:57Z","author_association":"NONE","body":"@wvandrunen use full framework svcutil to generate the code and then compile the source using netstandard. There might be some stuff missing just use polyfill for those. We were missing the transaction attribute which we are polyfilling for now."}}
{"actor":{"display_login":"lsiddiquee"}}