abp(net core)+easyui+efcore实现仓储管理系统——模块管理升级(六十)

yizhihongxing

Abp(net core)+easyui+efcore实现仓储管理系统目录

 

1.在Visual Studio 2022的解决方案资源管理器中,选中“ABP.TPLMS.Web.Mvc”项目,然后单击鼠标右键,在弹出菜单中选中“设为启动项目”。按F5运行应用程序。

2.在浏览器将呈现登录页面,然后输入管理员用户名进行登录。浏览器跳转到首页面。如下图。

 abp(net core)+easyui+efcore实现仓储管理系统——模块管理升级(六十)

3.在主界面的菜单中,选择“Business->Module”菜单项,浏览器中呈现一个模块信息列表页面,我们发现此页面的顶部与右边的菜单部分缺失css,样式不好看。如下图。

abp(net core)+easyui+efcore实现仓储管理系统——模块管理升级(六十)

4. 在Visual Studio 2017的“解决方案资源管理器”中,右键单击在领域层“ABP.TPLMS.Web.Mvc”项目中的Views\Module目录。 找到Index.cshmtl文件,修改顶部的代码与按钮的代码。具体代码如下:

 

@using ABP.TPLMS.Web.Startup

@model ABP.TPLMS.Web.Models.Module.EditModuleModalViewModel
 
@{
    ViewData["Title"] = PageNames.Module;
}

@section scripts
    {  
        <script src="~/view-resources/Views/Module/Index.js" asp-append-version="true"></script>
   }


   <section class="content-header">
    <div class="container-fluid">
        <div class="row">
            <div class="col-sm-6">
                <h1>@L("Module")</h1>
            </div>
                         <div class="col-sm-4 text-sm-right">
                         <a id="RefreshButton" href="javascript:void(0);" ><i class="fas fa-redo-alt"></i></a>
                         </div>
            <div class="col-sm-2">
                <a  asp-action="Create"  class="btn bg-blue float-sm-right">
                    <i class="fa fa-plus-square"></i>
                    @L("Create")
                </a>
            </div>
        </div>
    </div>
</section>
<div class="row clearfix">
    <div class="col-lg-12 col-md-12 col-sm-12 col-xs-12">
        <div class="card">
            <div class="body table-responsive">
                <table class="table">
                    <thead>
                        <tr>
                            <th>
                                @Html.DisplayNameFor(model => model.Module.Name)
                            </th>
                            <th>
                                @Html.DisplayNameFor(model => model.Module.DisplayName)

                            </th>
                            <th>
                                @Html.DisplayNameFor(model => model.Module.HotKey)

                            </th>
                            <th>

                                @Html.DisplayNameFor(model => model.Module.IconName)
                            </th>
                            <th>
                                @Html.DisplayNameFor(model => model.Module.RequiredPermissionName)
                            </th>
                            <th>
                                @Html.DisplayNameFor(model => model.Module.Status)

                            </th>
                            <th></th>

                        </tr>
                    </thead>

                    <tbody>
                        @foreach (var item in Model.Modules)

                        {
                            <tr>
                                <td>
                                    @Html.DisplayFor(modelItem => item.Name)
                                </td>
                                <td>
                                    @Html.DisplayFor(modelItem => item.DisplayName)
                                </td>
                                <td>
                                    @Html.DisplayFor(modelItem => item.HotKey)
                                </td>
                                <td>

                                    @Html.DisplayFor(modelItem => item.IconName)
                                </td>
                                <td>
                                    @Html.DisplayFor(modelItem => item.RequiredPermissionName)
                                </td>
                                <td>
                                    @Html.DisplayFor(modelItem => item.Status)
                                </td>
                                <td>
                                  
                                   <a asp-action="Edit" class="btn btn-sm bg-secondary" asp-route-id="@item.Id"><i class="fas fa-pencil-alt"></i>@L("Edit")</a>
 
                                    <a asp-action="Delete" class="btn btn-sm bg-danger" asp-route-id="@item.Id"><i class="fas fa-trash"></i>@L("Delete")</a>
                                     
                                </td>
                            </tr>
                        }
                    </tbody>
                </table>
            </div>
        </div>
    </div>
</div> 

5.在Visual Studio 2022中按F5运行应用程序。在浏览器将呈现登录页面,然后输入管理员用户名进行登录。浏览器跳转到首页面。

6.在主界面的菜单中,选择“Business->模块管理”菜单项,浏览器中呈现一个模块信息列表页面,如下图。 abp(net core)+easyui+efcore实现仓储管理系统——模块管理升级(六十)

  7.Business菜单已经添加到左侧菜单栏中,不过这个Business菜单好像没有英文名称,即没有英文名称也没有中文名称。模块管理的列表页面中也没有。如下图。

abp(net core)+easyui+efcore实现仓储管理系统——模块管理升级(六十)

  8.使用鼠标在页面中右上角处的语言选项选择了“简体中文”这一选项,其他菜单都跟随语言的变化而变化了,我们新增加的Business菜单和Module模块没有变化。如下图。

 abp(net core)+easyui+efcore实现仓储管理系统——模块管理升级(六十)

 

  9. 在Visual Studio 2022的“解决方案资源管理器”中,找到“ABP.TPLMS.Core”项目中的Localization目录。 使用鼠标双击打开TPLMS.xml与TPLMS-zh-Hans.xml两个文件。如下图。

        abp(net core)+easyui+efcore实现仓储管理系统——模块管理升级(六十)

  10. 在Visual Studio 2022的“解决方案资源管理器”中,打开TPLMS.xml与TPLMS-zh-Hans.xml两个文件。分别添加关于Business菜单和Module模块的英文与中文信息。如下图1与图2.。

 abp(net core)+easyui+efcore实现仓储管理系统——模块管理升级(六十)

图1  英文

 abp(net core)+easyui+efcore实现仓储管理系统——模块管理升级(六十)

图2 中文

   11. 在Visual Studio 2022中按F5,运行我们的应用程序。在登录界面登录之后。当我们改变页面中右上角处的语言选项时,Business菜单和Module模块跟随语言的变化而变化了,当语言选择为中文时,菜单名称由“Business”变为“业务管理”,Module变为了“模块管理”。如下图。

abp(net core)+easyui+efcore实现仓储管理系统——模块管理升级(六十)

 

原文链接:https://www.cnblogs.com/chillsrc/p/17300643.html

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:abp(net core)+easyui+efcore实现仓储管理系统——模块管理升级(六十) - Python技术站

(0)
上一篇 2023年4月18日
下一篇 2023年4月18日

相关文章

  • C#面向对象编程中开闭原则的示例详解

    C#面向对象编程中开闭原则的示例详解 什么是开闭原则 开闭原则(Open-Closed Principle)是面向对象编程中的一个重要原则,其定义如下: 软件实体(类、模块、函数等)应该对扩展开放,对修改关闭。 也就是说,在软件设计的过程中,可以通过扩展已有的代码来增加新的功能,而不需要修改原有的代码。 如何实现开闭原则 使用抽象类或接口 使用抽象类或接口可…

    C# 2023年5月31日
    00
  • C#编写一个网游客户端的完整步骤

    下面是详细的C#编写一个网游客户端的完整步骤攻略: 一、前期准备 1. 选择游戏引擎 选择一个合适的游戏引擎是开发网游客户端的必要前提。市面上比较知名的游戏引擎包括Unity、Unreal Engine、Cocos2D等,选择合适的引擎需要考虑开发团队的技术能力、游戏类型等因素。 2. 学习网络编程基础 了解网络编程基础,包括基本的网络协议、Socket编程…

    C# 2023年5月15日
    00
  • 基于WPF实现步骤控件的示例代码

    接下来我将详细讲解如何基于WPF实现步骤控件的示例代码。 什么是步骤控件 步骤控件常用于引导用户完成多步操作的过程,通常由一组步骤组成,每个步骤都包含了一个标题和内容。用户可以根据提示完成当前步骤的操作,然后进入下一步骤。 示例代码攻略 步骤一:创建控件 首先,我们需要创建一个WPF控件来实现步骤控件的功能。我们可以使用ItemsControl控件,并对其进…

    C# 2023年6月7日
    00
  • JSP数据分页导出下载显示进度条样式

    JSP是一种动态网页开发技术,可以用于开发数据分页、导出、下载等功能。在实现这些功能时,我们通常需要使用JavaScript和CSS来实现进度条样式。本文将介绍如何使用JSP实现数据分页、导出、下载和显示进度条样式。 数据分页 在JSP中,可以使用JSTL标签库和EL表达式来实现数据分页。以下是示例: <%@ taglib prefix="c…

    C# 2023年5月15日
    00
  • c#的treeview绑定和获取值的方法

    下面是针对C# TreeView控件的绑定和获取值方法的完整攻略。 一、TreeView控件的绑定方法 1. 简单绑定 最基本的TreeView控件绑定方法是手动编写代码,逐个添加TreeView控件的节点。首先需要创建TreeView控件实例,并设置其Dock、Size、Location等属性,然后为其每一个要添加的节点编写代码,这种方法比较麻烦但是可以灵…

    C# 2023年5月31日
    00
  • C# TreeView读取数据库简单实例

    C# TreeView读取数据库简单实例 本文将介绍如何在C#的WinForms应用程序中,使用TreeView控件读取数据库数据,并在TreeView节点中展示出来。我们以展示行政区划(省市县)为例子。 确定数据库 我们首先要确定用于存放数据的数据库。在本例中,我们使用MySQL数据库。 创建数据库 我们需要先创建一个数据库,并在其中创建一个表结构,用于存…

    C# 2023年6月2日
    00
  • C# File.GetAttributes(string path):获取指定文件或目录的属性

    File.GetAttributes(string path) 方法的作用是获取指定路径上的文件或目录的属性。 其使用方法的完整攻略如下: 1. 导入命名空间 在使用该方法之前,需要先导入 System.IO 命名空间,因为此方法是定义在 System.IO.File 类中的静态方法。 using System.IO; 2. 参数说明 该方法的参数 path…

    C# 2023年4月19日
    00
  • Unity中 mesh生成斜坡的示例代码

    下面我为你详细讲解如何在Unity中生成斜坡的示例代码。 Unity中mesh生成斜坡的示例代码 1. 创建空白的GameObject 首先我们需要在场景中创建一个空白的GameObject。你可以在Unity的菜单栏中选择GameObject -> CreateEmpty来创建它。 2. 添加MeshFilter和MeshRenderer组件 选中G…

    C# 2023年5月15日
    00
合作推广
合作推广
分享本页
返回顶部