.NETcore中BasicHttpBinding的示例
时间: 2024-10-20 14:03:28 浏览: 13
在.NET Core中,`BasicHttpBinding`是一个较旧的、基于HTTP的WCF (Windows Communication Foundation) 绑定,主要用于服务之间的简单HTTP请求和响应。它不支持安全性和高级特性,适合轻量级的Web API通信。
以下是一个简单的示例,展示如何在一个ASP.NET Core WebAPI项目中使用`BasicHttpBinding`:
```csharp
using System.ServiceModel;
using Microsoft.AspNetCore.Mvc;
// ... 其他命名空间
[ServiceContract]
public interface IMyService
{
[OperationContract]
string SayHello(string name);
}
[ServiceBehavior(HostedService = true)]
public class MyService : IMyService
{
public string SayHello(string name)
{
return $"Hello, {name}!";
}
}
// 启动服务并暴露端点
var host = new WebHostBuilder()
.UseKestrel()
.ConfigureServices(services =>
{
services.AddControllers();
services.AddEndpointsApiExplorer();
// 注册WCF服务
services.AddServiceModel();
services.AddSingleton<IMyService, MyService>();
services.AddCommunicationServices(options => options.Http.Listen(8080));
})
.UseStartup<Startup>()
.Build();
host.Run();
```
在这个例子中,我们创建了一个接口`IMyService`和其实现类`MyService`。然后在`Startup.cs`的`ConfigureServices`方法中,添加了`BasicHttpBinding`的支持,并启动了HTTP服务器监听8080端口。
客户端可以通过HTTP GET请求访问`http://localhost:8080/sayhello?name=YourName`来调用服务。
阅读全文