c# - 菜单没有从数据库中显示
问题描述
我尝试从表中获取列表,我在控制器上编码
var _menu = new List<MenuModel>();
try
{
if (con.State == ConnectionState.Closed)
{
con.Open();
}
string query = "";
var role = Session["sessionrole"];
query = "SELECT * FROM \"SubMenu\" INNER JOIN \"Main_menu\" ON \"SubMenu\".\"MainMenuId\" = \"Main_menu\".\"Id\" WHERE \"ROLE_ID\" = @role";
NpgsqlCommand cmd = new NpgsqlCommand(query, con);
var reader = cmd.ExecuteReader();
while (reader.Read())
{
_menu.Add(item: new MenuModel
{
MainMenuName = reader["MainMenu"] != DBNull.Value ? (string)reader["MainMenu"] : ""
});
}
}
catch (Exception ex)
{
}
Session["Menu"] = _menu;
我在共享中添加了 _menuPartial 以在视图索引中呈现
<nav class="navbar navbar-inverse">
<div class="container-fluid">
<div class="navbar-header">
<a class="navbar-brand" href="#">Menu Example</a>
</div>
<ul class="nav navbar-nav">
@if (Session["Menu"] != null)
{
var MenuMaster = (List<Accountstatement.Models.MenuModel>)Session["Menu"];
var groupByMenu = MenuMaster.GroupBy(x => x.MainMenuName).ToList();
foreach (var MenuList in groupByMenu)
{
<li class="dropdown">
<a class="dropdown-toggle" data-toggle="dropdown" href="#">@MenuList.Key<span class="caret"></span></a>
<ul class="dropdown-menu">
@foreach (var SubMenuList in MenuList)
{
<li><a href="#">@SubMenuList.SubMenuName</a></li>
}
</ul>
</li>
}
}
</ul>
我尝试输入的表格是: MainMenu | 身份证 | 主菜单 | | -------- | -------------- | | 1 | 康文 | | 2 | 伊斯兰教 | Id 是 varchar MainMenu 是 varchar
我尝试从数据库添加动态菜单以在视图索引中添加菜单,但我没有看到我的列表呈现,有什么建议吗?
解决方案
推荐阅读
- c# - 如何使用 Unity 初始化 Firebase 实时数据库?
- javascript - onselectionchange 更新时变量不更新
- python - Boto3 Python 只获取某些文件类型?
- c# - Visual Studio 2017 想要引用已使用不同程序集引用的内容
- javascript - Angular5 - 从类中新创建的对象返回未定义
- c# - Webrtc Capture Desktop Audio without using vb-audio cable driver for Native Windows
- python - 如何通过 Selenium 摆脱信息栏“Chrome 正在被自动化测试软件控制”
- java - SQL 查询 - 没有这样的列
- powershell - PowerShell 中的 curl --data-binary
- python - 从数据集元素和查找表构造 SparseTensor 以用于估计器