微服务解决方案:如何与 ABP Suite 配合使用
ABP Suite 提供可视化解决方案设计器、代码生成器等工具,使您的开发过程更轻松、更快速。
您可以通过 ABP Studio 打开 ABP Suite,使用 ABP Suite -> 打开 工具栏菜单项,或右键单击目标模块并选择 ABP Suite 菜单项。
ABP Suite 会在内置浏览器窗口中打开。您也可以通过浏览器访问 http://localhost:3000 来使用该套件。在其中,您可以可视化设计您的解决方案并生成代码。
以下示例中,我们将实体名称定义为 Product,并为该实体提供了其他元数据:
在 ABP Suite 中对实体点击 保存并生成 后,使用 运行 -> 构建并重启(位于解决方案运行器)以应用更改。
ABP Suite 要求您停止相关解决方案/项目中所有正在运行的实例,以便正确生成代码。否则,可能无法有效工作。
随后,您可以访问 Swagger UI 来确认必要的 API 端点和服务已创建。
如果您为实体选择了 创建用户界面 选项,相关的 UI 组件(页面、样式、脚本等)也将被创建。为了能在您的主应用程序/UI 中看到相关页面,请按以下步骤操作:
- 使用以下命令生成客户端代理:
abp generate-proxy -t csharp -url http://localhost:{your-service-port}/ -m {remote-service-name} --without-contracts
- 此命令应在您的主应用程序目录中运行,且您的微服务应处于运行状态。
- 该命令会在主应用程序中为您的微服务生成代理类,您可以在 ClientProxies 文件夹下查看。
注意: 在您的服务中对每个实体生成或修改后,都应运行此命令以更新客户端代理。
- 配置静态客户端代理的应用程序:
public class MyClientAppModule : AbpModule
{
public override void ConfigureServices(ServiceConfigurationContext context)
{
// 准备生成静态客户端代理
context.Services.AddStaticHttpClientProxies(
typeof(MyServiceApplicationContractsModule).Assembly
);
// 将生成的 app-generate-proxy.json 包含到虚拟文件系统中
Configure<AbpVirtualFileSystemOptions>(options =>
{
options.FileSets.AddEmbedded<MyClientAppModule>();
});
}
}
完成以上步骤后,您便可以运行微服务并查看生成的 CRUD 页面:
抠丁客






