当前位置:首页 > 技术积累 > 正文内容

【Orchard Core从零开始】(1)VS中手动创建CMS项目

竹林之风5个月前 (12-15)技术积累1306

        Orchard Core包含两种不同类型的目的:

  • Orchard Core Framework:基于ASP.NET Core的、构建模块化和多租户的应用程序框架,旨在开发SaaS应用,托管DLL名为OrchardCore.Application.Cms.Core.Targets。

  • Orchard Core CMS:基于Orchard Core Framework开发的完整网站内容管理系统(CMS),托管DLL名为OrchardCore.Application.Cms.Targets。

        其中Orchard Core Framework(OrchardCore.Application.Cms.Core.Targets)不包含任何前台主题,只包含TheAdmin主题和Blank site、Headless site两个配方,仅用于以下情形:

  • 开发Decoupled CMS;

  • 开发Headless CMS;

  • 从零开发一个带主题的站点。

        而Orchard Core CMS(OrchardCore.Application.Cms.Targets)包含3种不同的建站策略:

  • Full CMS:该模式使用一个主题和多个模板来渲染内容,主要面向创建一个几乎不需要开发的、包含前后台的完整CMS系统。

  • Decoupled CMS:该模式默认无前台模板,仅包含后台。需要使用Razor Pages或MVC Actions创建所有前台模板,并使用内容服务获取具体内容。

  • Headless CMS. 该模式仅含管理内容的后台,需要创建另一个独立的前台应用,并使用GraphQL或者REST APIs获取所有托管内容。

        本文以引用OrchardCore.Application.Cms.Targets创建一个CMS为例。

1、在VS中新建一个ASP.NET Core Empty项目:

1.png

2、为项目取一个名称:

2.png

        取消勾选“Place solution and project in the same directory”是为了后续创建模块或主题时放在各自的子目录中。

3、右键单击项目名称,选择“Manage NuGet Packages...”打开Nuget Package Manager添加“OrchardCore.Application.Cms.Targets”。

1.png

4、修改Program.cs

(1)若有以下代码先去掉:

builder.Services.AddRazorPages();
app.MapGet("/", () => "Hello World!");

        添加以下代码:

builder.Services.AddOrchardCms();

(2)若有以下代码也去掉:

app.UseHttpsRedirection();
app.UseRouting();
app.UseAuthorization();
app.MapRazorPages();

        添加以下代码:

app.UseOrchardCore();

5、F5运行,浏览器打开。

1.png

        选择相应的配方(Recipe)则启用对应的建站策略:

  • Orchard Core Framework:Software as a Service;

  • Full CMS:Agency、Blog、Coming Soon;

  • Decoupled CMS:Blank site;

  • Headless CMS:Headless site。

        参考资料:https://docs.orchardcore.net/


扫描二维码推送至手机访问。

版权声明:本文由久爱编程网发布,如需转载请注明出处。

本文链接:https://www.9icode.com/index.php/post/380.html

标签: Orchard Core
分享给朋友:

“【Orchard Core从零开始】(1)VS中手动创建CMS项目” 的相关文章

 通用基础表逻辑设计(二)——扩展字段

通用基础表逻辑设计(二)——扩展字段

一、扩展字段表        一个表的字段可能并非一成不变,系统的运行、需求的变化等客观条件可能会需要增加其他字段,如何在不直接修改表设计的前提下满足需求呢?该...

ASP.NET实现HTTP长轮询(三)——MVC

ASP.NET实现HTTP长轮询(三)——MVC

        本文主要描述如何在ASP.NET MVC中实现长轮询:(1)控制器继承AsyncController:using System.Threading; using ...

Android开发从新手开始(一)——概述

Android开发从新手开始(一)——概述

前言        做为一个程序员,不应该将自己限定在自己熟悉的平台和语言上,而也应该多去了解一下其它平台和语言。这样可以吸取各个平台和语言的思想,提升自己解决...

ASP.NET中报“无法在已发送HTTP标头之后进行重定向”异常问题解决

ASP.NET中报“无法在已发送HTTP标头之后进行重定向”异常问题解决

        ASP.NET中报“无法在已发送HTTP标头之后进行重定向”异常时,其中一个原因是:在已经重定向后又重定向。在ASP.NET中实现重定向有以下几...

ASP.NET中报“无法在已发送HTTP标头之后设置状态”异常问题解决

ASP.NET中报“无法在已发送HTTP标头之后设置状态”异常问题解决

        ASP.NET中报“无法在已发送HTTP标头之后设置状态”异常,是因为设置Response的StatusCode之前,程序已设置响应标头。可从以...

ASP.NET网站自定义错误处理及其它安全相关

ASP.NET网站自定义错误处理及其它安全相关

        ASP.NET网站在运行过程中总是有可能报错,例如404等HTTP错误、500等程序异常。在IIS托管并报错的情况下,网站的默认行为依次是:(1).NET运行时接收并处理的部分显示.N...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。