2.7 手动搭建分层
推荐使用脚手架
Furion 官方提供了非常灵活方便的脚手架,可以快速的创建多层架构项目。
推荐使用 《2.6 官方脚手架》代替本章节功能。
2.7.1 推荐分层设计
Furion 推荐采用多层项目设计架构,每一个项目层的依赖分别是:
YourName.Application:添加YourName.Core引用YourName.Core:添加Furion引用,SqlSugar 版本添加Furion.Pure🎗YourName.Database.Migrations:添加YourName.EntityFramework.Core引用YourName.EntityFramework.Core:添加YourName.Core引用YourName.Web.Core:添加YourName.Application,YourName.Database.Migrations引用YourName.Web.Entry:添加YourName.Web.Core引用 和Microsoft.EntityFrameworkCore.Tools包
特别说明
如果采用 EFCore 以外的 ORM 框架,如 SqlSugar,那么无需创建 YourName.Database.Migrations 和 YourName.EntityFramework.Core 层。
另外 YourName.Web.Entry 无需引用 Microsoft.EntityFrameworkCore.Tools 包。
2.7.2 集成 Furion 功能
项目搭建好之后,集成 Furion 框架只需要在 Program.cs 中 添加 Inject() 方法即可:
.NET5版本:
using Microsoft.AspNetCore.Hosting;
using Microsoft.Extensions.Hosting;
namespace YourName.Web.Entry
{
public class Program
{
public static void Main(string[] args)
{
CreateHostBuilder(args).Build().Run();
}
public static IHostBuilder CreateHostBuilder(string[] args)
{
return Host.CreateDefaultBuilder(args)
.ConfigureWebHostDefaults(webBuilder =>
{
webBuilder.Inject()
.UseStartup<Startup>();
});
}
}
}
.NET6版本
var builder = WebApplication.CreateBuilder(args).Inject();
builder.Services.AddControllers().AddInject();
var app = builder.Build();
app.UseHttpsRedirection();
app.UseAuthorization();
app.UseInject();
app.MapControllers();
app.Run();
2.7.3 反馈与建议
与我们交流
给 Furion 提 Issue。













