美文网首页
六、Orchard Core入门:通过Razor页面方式构建网站

六、Orchard Core入门:通过Razor页面方式构建网站

作者: 老哥深蓝 | 来源:发表于2019-04-21 22:46 被阅读0次

Orchard Core支持从Asp.net Core的RazorPages方法,通过视图层驱动整个网站
当前模式下OrchardCore默认只保护/Admin/区域,进行后台数据管理。前端由Razor视图驱动。

1、在新建立的OrchardCore项目中,新建wwwroot和Pages文件夹

  • Pages 文件夹:创建 Razor 页面和支持文件。
    - 每个 Razor 页面都是一对文件:.cshtml 文件,其中包含使用 Razor 语法的 C# 代码的 HTML 标记。.cshtml.cs 文件,其中包含处理页面事件的 C# 代码。
    - 支持文件的名称以下划线开头。 例如:_Layout.cshtml 文件。
  • wwwroot 文件夹:存放静态文件,如 HTML 文件、JavaScript 文件和 CSS 文件。 这些文件可以直接运行时被调用,比如:新建一个index.html文件,在运行使用文件名可能直接呈现。

2、在Pages文件夹建立index.cshtml文件,这是你网站默认的页面。注意:在页面的开始输入@page才可以正确调用。

@page
@section Header{
Header内容....
}
<h1 >Content内容</h1>
@{
  var projects = await Orchard.GetRecentContentItemsByContentTypeAsync("Project",6);
}
<ul>
  @foreach (var project in projects)
  {
    <li>
      @project
      @Html.Raw(project.Content.HtmlBodyPart.Html)
    </li>
  }
</ul> 

3、在Pages文件夹下建立Shared文件夹,在其下建立支持文件_layout.cshtml,这是母版文件。

<!-- 通过inject直接视图注入OrchardCore相应服务 -->
@inject OrchardCore.IOrchardHelper Orchard
<!DOCTYPE html>
<html lang="@Orchard.CultureName()"><!-- 直接使用OrchardCore后端数据 -->

<head>
  <meta charset="utf-8">
  <title>OrchardCore</title>
  <!-- 可以直接调取wwwroot文件夹下的内容-->
  <link href="css/main.css" rel="stylesheet">
</head>

<body dir="@Orchard.CultureDir()">
  @RenderSection("Header",required: false)
 @RenderBody()
</body>
</html>

4、在Pages文件夹下建立_ViewStart.cshtml和_ViewImports.cshtml文件,视图页面在渲染时会默认先渲染当前文件夹下的这两个文件。

//_ViewImports 引入命名空间等方面
@inject OrchardCore.IOrchardHelper Orchard
@addTagHelper *, OrchardCore.Media

//_ViewStart与_layout相似
//只要文件夹下存在ViewStart.cshtml,在页面执行之前都会先执行_ViewStart,
//_Layout.cshtml不引用不会执行
@{
    Layout="_layout";
}


相关文章

网友评论

      本文标题:六、Orchard Core入门:通过Razor页面方式构建网站

      本文链接:https://www.haomeiwen.com/subject/uylsgqtx.html