Orchard Core Framework:ASP.NET Core 模块化,多租户框架
上一篇编写Orchard Core一分钟搭建ASP.NET Core CMS ,介绍ASP.NET Core CMS ,Orchard的ASP.NET Core版,同时对应有一个ASP.NET Core框架。
支持模块化和多租户。整个Orchard Core就是通过一个个模块Module组成的
首先创建一个空的 ASP.NET Core Web应用程序为基础。下面学习模块的建立及使用。
模块化
首先在之前创建好的ASP.NET Core Web应用程序中,新建一个 类库(.NET Core)项目 为ModuleWeb。
然后添加 Microsoft.AspNetCore.Mvc 及 OrchardCore.Module.Targets 引用。
命令如下:
Install-Package Microsoft.AspNetCore.Mvc
Install-Package OrchardCore.Module.Targets -Pre
接着我们就可以添加一个Views 文件夹和 Controllers 文件夹,以及添加一个HomeController和对应的视图页。
由于类库上没有很好的新建快捷方式,建议从ASP.NET Core Web 项目中复制。
???public class HomeController : Controller ???{ ???????public IActionResult Index() ???????{ ???????????return View(); ???????} ???}
Home/Index.cshtml
<h1>Hello from ModuleWeb /Home/Index</h1><h2>LineZero</h2>
Module 创建好了,接下来在ASP.NET Core Web 项目中引用。
首先需要在Web 项目添加一个OrchardCore.Application.Mvc.Targets 包
Install-Package OrchardCore.Application.Mvc.Targets -Pre
接着将ModuleWeb 项目引用进来。
更改Startup.cs 如下:
???public class Startup ???{ ???????public void ConfigureServices(IServiceCollection services) ???????{ ???????????services.AddModules(); ???????} ???????public void Configure(IApplicationBuilder app, IHostingEnvironment env) ???????{ ???????????if (env.IsDevelopment()) ???????????{ ???????????????app.UseDeveloperExceptionPage(); ???????????} ???????????app.UseModules(); ???????} ???}
注意项目中引用为 Microsoft.AspNetCore 以及Microsoft.ApplicationInsights.AspNetCore,配置如下
?<ItemGroup> ???<PackageReference Include="Microsoft.ApplicationInsights.AspNetCore" Version="2.0.0" /> ???<PackageReference Include="Microsoft.AspNetCore" Version="2.0.0" /> ???<PackageReference Include="OrchardCore.Application.Mvc.Targets" Version="1.0.0-beta1-3667" /> ?</ItemGroup> ?<ItemGroup> ???<ProjectReference Include="..\ModuleWeb\ModuleWeb.csproj" /> ?</ItemGroup>
接着运行程序,输入 ModuleWeb/Home/index 如下
多租户
Orchard Core Framework:ASP.NET Core 模块化,多租户框架
原文地址:http://www.cnblogs.com/linezero/p/8047781.html