有一個具體的例子 :https://github.com/OrchardCMS/OrchardCore.Samples 1、先使用教程,安裝cms -可以是完全 也可以是採用前後端分離管理。 修改對應的program.cs 的內容: `var builder = WebApplication.Cre ...
有一個具體的例子 :https://github.com/OrchardCMS/OrchardCore.Samples
1、先使用教程,安裝cms -可以是完全 也可以是採用前後端分離管理。
修改對應的program.cs 的內容:
`var builder = WebApplication.CreateBuilder(args);
// Add services to the container.
//builder.Services.AddRazorPages();
builder.Services.AddOrchardCore();
//這是為了 識別其他模塊的mvc路徑
builder.Services.AddOrchardCore().AddMvc();
// cms
builder.Services.AddOrchardCms().AddMvc();
//builder.Services.AddMvc();
var app = builder.Build();
// Configure the HTTP request pipeline.
if (!app.Environment.IsDevelopment())
{
app.UseExceptionHandler("/Error");
// The default HSTS value is 30 days. You may want to change this for production scenarios, see https://aka.ms/aspnetcore-hsts.
app.UseHsts();
}
app.UseHttpsRedirection();
app.UseStaticFiles();
//原本自帶的路由跟授權要註釋掉,使用orchardcore的路由跟頁面
//app.UseRouting();
//app.UseAuthorization();
//app.MapRazorPages();
//這裡是使用orchardcore的
app.UseOrchardCore();
app.Run();
`
對應添加引用
然後要添加的其他net core項目 比如新建一個webapi項目
然後添加引用
其他都不需要變。
再到剛纔的cms的項目中 添加webapi的項目引用即可調用它。 可
以在後臺管理中開啟。或者禁用 類似如下圖
這樣就可以使用到該項目的路由,通常是需要加該項目的首碼。 這是約定。
也可以在控制器裡面 定義 [Route("xxx/[controller]")]
route 的設置會直接忽略項目首碼。 儘量不要跟主cms的路由衝突,比如 admin 就不要設置了。