void XmlMethod(System.Xml.Linq.XElement xml);
public class SampleService : ISampleService
		public string Ping(string s)
			Console.WriteLine("Exec ping method");
			return s;
		public ComplexModelResponse PingComplexModel(ComplexModelInput inputModel)
			Console.WriteLine("Input data. IntProperty: {0}, StringProperty: {1}", inputModel.IntProperty, inputModel.StringProperty);
            return new ComplexModelResponse
				FloatProperty = float.MaxValue / 2,
				StringProperty = inputModel.StringProperty,
				ListProperty = inputModel.ListProperty,
				DateTimeOffsetProperty = inputModel.DateTimeOffsetProperty
		public void VoidMethod(out string s)
			s = "Value from server";
		public Task<int> AsyncMethod()
			return Task.Run(() => 42);
		public int? NullableMethod(bool? arg)
			return null;
		public void XmlMethod(XElement xml)
			Console.WriteLine(xml.ToString());

4,Startup种 设置EndPoint

public class Startup
		public void ConfigureServices(IServiceCollection services)
			services.TryAddSingleton<ISampleService, SampleService>();
			services.AddMvc(x => x.EnableEndpointRouting = false);
			services.AddSoapCore();
		public void Configure(IApplicationBuilder app)
			app.UseSoapEndpoint<ISampleService>("/Service.svc", new BasicHttpBinding(), SoapSerializer.DataContractSerializer);
			app.UseSoapEndpoint<ISampleService>("/Service.asmx", new BasicHttpBinding(), SoapSerializer.XmlSerializer);
			app.UseMvc();

5,启动项目后输入地址  localhost:5050/Service.asmx 就会显示描述内容

SoapCore 创建的webservice 没有可视化调用测试窗口,生成的wsdl 和asp.net  生成的有差别,如果需要适配 asp.net 生成的webService的wsdl ,可以通过复制原有的wsdl 内容 ,替换现有生成的wsdl ,操作如下

1,服务原有服务生成的wsdl 复制保存为old.wsdl ,放置在根目录

2,配置appsetting.json 文件增加如下内容

  "FileWSDL": {
    "UrlOverride": "",// 
    "WebServiceWSDLMapping": {
      "Service.asmx": { // 需要适配原有服务的名称
        "WsdlFile": "old.wsdl",//wsdl 文件名称
        "SchemaFolder": "",
        "WsdlFolder": "" // wsdl 存放目录 ,

3,Startup绑定时设置参数内容

	// 用于支持老版wsdl 显示问题 ,  映射原有webservice wsdl 文件内容
			var settings = Configuration.GetSection("FileWSDL").Get<WsdlFileOptions>();
			settings.AppPath = env.ContentRootPath; // The hosting environment root path
			app.UseSoapEndpoint<TjHisItfInterfaceService>("/Service.asmx", new BasicHttpBinding(), SoapSerializer.XmlSerializer,false,null,settings);

  此时服务生成的wsdl 就为老版wsdl 内容了

UrlOverride 可为空,该值会在生成wsdl文件时替换后 wsdl 最下方的请求地址  如果该值生成错误,虽然客户端可以加载出webservice方法但调用时就会出错,为空时默认替换为StartUp.cs 中终节点设置的服务名称

.NetCore 无法直接创建WebService 可以借助SoapCore来创建1,创建项目2,通过NuGet安装SoapCore3,创建服务接口及实现类 [ServiceContract] public interface ISampleService { [OperationContract] string Ping(string s); [OperationContract] ComplexModelResponse PingComplexMode
.net core 反射接口,生成wsdl文档相关代码,从.NET Framework版本改造而来;生成调用 ServiceDescriptionReflector reflector = new ServiceDescriptionReflector(); reflector.Reflect(_serviceType, $"http://localhost:9001/service.asmx"); if (reflector.ServiceDescriptions.Count > 0) reflector.ServiceDescriptions[0].Write(fileName);
由于破解 starUml 3.0 方法繁琐,对于不熟悉 npm 和前端的人来说真的是一种痛苦,这里将破解好的 app.asar 文件分享出来,使用者只需要替换即可。为了避免出现不可挽救的错误,压缩包中提供了官方的正确的3.0.1版本的 app.asar,如果出现错误,可以替换官方文件,保证软件正常使用。 压缩包中也包括使用方法,正确使用,10秒搞定!
深度学习是一种人工智能技术,通常使用大型神经网络来处理复杂的输入数据。要深入学习 .NetCore,您可以从以下几个方面入手: 1. 学习 .NetCore 的基础知识,包括语言基础、框架原理等。 2. 学习深度学习基础知识,包括神经网络的工作原理、常用的深度学习算法等。 3. 学习使用 .NetCore 实现深度学习的方法。可以使用 .NetCore 的开发工具和库来构建神经网络模型并进行训练。 4. 练习使用 .NetCore 实现深度学习的练习题。可以在线上找到一些深度学习的练习题,并尝试使用 .NetCore 解决这些问题。 5. 阅读相关资料并查看深度学习的项目实例,以便了解如何在实际应用中使用 .NetCore 实现深度学习。