通过尝试为 Hyperledger Indy 项目构建代理/客户端,我将迈出 .NET Core 3.1 的第一步。他们提供了一个dotnet 框架。
使用的 SDK 是Microsoft.NET.Sdk.Web
.
这是我的简单应用程序:
程序.cs
using Microsoft.AspNetCore.Hosting;
using Microsoft.Extensions.Hosting;
namespace issuer
{
class Program
{
static void Main(string[] args)
{
System.Console.WriteLine("====== Start ======"); // Printed to console
CreateHostBuilder(args).Build().Run();
var input = System.Console.ReadKey(); // Never reached
System.Console.Write(" --- You pressed " + input.Key.ToString());
}
public static IHostBuilder CreateHostBuilder(string[] args) =>
Host.CreateDefaultBuilder(args)
.ConfigureWebHostDefaults(webBuilder =>
{
webBuilder.UseStartup<Startup>();
});
}
}
和 Startup.cs:
using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Hosting;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting;
namespace issuer
{
class Startup
{
public void ConfigureServices(IServiceCollection services)
{
services.AddAriesFramework(builder =>
{
builder.RegisterAgent(options =>
{
options.EndpointUri = "http://localhost:5000";
// ...
});
});
}
public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
}
app.UseRouting();
app.UseAriesFramework();
}
}
}
当我启动它时,我有一个被动应用程序在 localhost:5000 上侦听来自其他客户端的传入请求。
我想要实现的是一个交互式控制台(而不是 Web 前端)来主动发起与其他客户端的通信。我认为一个好的第一步是Console.ReadKey()
在一切都设置好之后得到一个。
这甚至可能吗?