Asp.net mvc 4 如何在asp mvc 4中将数据绑定到布局页面

Asp.net mvc 4 如何在asp mvc 4中将数据绑定到布局页面,asp.net-mvc-4,Asp.net Mvc 4,如何将控制器代码写入共享布局页面 我想把菜单从数据库转到布局 我可以在正常查看页面中获取菜单 这是我的布局页面 <pre lang="html"> <div style="width:1230px"> <script type="text/ng-template" id="treeMenu"> <a href="{{menu.Description}}">{{m

如何将控制器代码写入共享布局页面

我想把菜单从数据库转到布局

我可以在正常查看页面中获取菜单

这是我的布局页面

<pre lang="html"> <div style="width:1230px">
                    <script type="text/ng-template" id="treeMenu">
                        <a href="{{menu.Description}}">{{menu.Name}}</a>

                        <ul ng-if="(SiteMenu | filter:{ParentID : menu.Id}).length > 0">

                            <li ng-repeat="menu in SiteMenu | filter:{ParentID : menu.Id} : true" ng-include="'treeMenu'"></li>
                        </ul>
                    </script>
                    <ul class="main-navigation">
                        <li ng-repeat="menu in SiteMenu | filter:{ParentID : 0} : true" ng-include="'treeMenu'"></li>
                    </ul>


您应该将其部分隔离,并在布局页面中使用渲染

<pre lang="html"> <div style="width:1230px">
                    <script type="text/ng-template" id="treeMenu">
                        <a href="{{menu.Description}}">{{menu.Name}}</a>

                        <ul ng-if="(SiteMenu | filter:{ParentID : menu.Id}).length > 0">

                            <li ng-repeat="menu in SiteMenu | filter:{ParentID : menu.Id} : true" ng-include="'treeMenu'"></li>
                        </ul>
                    </script>
                    <ul class="main-navigation">
                        <li ng-repeat="menu in SiteMenu | filter:{ParentID : 0} : true" ng-include="'treeMenu'"></li>
                    </ul>
简而言之,步骤如下:

  • 例如,在一些名为SiteMenu的控制器“比如说CommonController”中创建操作
  • 放入将从数据库中获取数据的代码,并将其映射到适当的ViewModel以表示菜单项
  • 操作应返回PartialView而不是View
  • 无论主布局如何,都要考虑此操作。因此,只需为它创建一个特殊的视图,并将Html的逻辑放在该视图中
  • 在主布局的适当位置,只需使用
    @Html.RenderAction(“SiteMenu”,“Common”)

  • 欲了解更多信息,请阅读

    如何操作,先生,我是MVCUP的新手,我的答案是错误的先生:概念侧的类型“TestDemoModel.SiteMenu”无法映射到对象侧的类型“AccountsLayout.SiteMenu”。这两种类型都必须是抽象类型,或者都必须是具体类型。描述:执行当前web请求期间发生未处理的异常。请查看堆栈跟踪以了解有关错误的更多信息,以及错误源于代码的位置。我想这是另一个问题