无法通过路由传递UserId

时间:2015-09-03 17:36:38

标签: javascript c# asp.net razor angular-ui-router

尝试使用Razor Markup通过ui-sre传递UserId,但我遇到以下错误

  

错误:[$ parse:syntax]语法错误:令牌'df'是意外的,   期待表达式[{userId:   6981e6df-6004-4050-a721-f063fa73cbb1}]从   [df-6004-4050-a721-f063fa73cbb1}]。   http://errors.angularjs.org/1.3.13/ $解析/语法P0 = DF&安培; P1 =是%20unexpected%2C%20expecting%20%5B%7D%5D&安培; P2 = 17&安培; P3 =%7B%20userId%3A%206981e6df-6004-4050 -a721-f063fa73cbb1%20%7D&安培; P4 = DF-6004-4050-A721-f063fa73cbb1%20%7D

Layout.cshtml:

 @Using Microsoft.aspnet.identity

<ul class="nav navbar-nav">
                <li><a ui-sref="home ({ userId: @User.Identity.GetUserId() })">Home</a></li>
                <li><a ui-sref="about">About</a></li>
                <li><a ui-sref="contact">Contact</a></li>
            </ul>

state.js

                .state('home', {
                url: '/:userId',
                views: {
                    'main-body': {
                        templateUrl: '/app/views/home.html',
                        controller: 'HomeController',
                        controllerAs: 'vm'
                    }
                }
            })

不确定我是否正在接近以最佳方式传递UserID ......

1 个答案:

答案 0 :(得分:0)

我认为之前工作的常量事件也没有,但是如果使用语法来触摸它是一件简单的事情。

<li><a ui-sref="home ({ userId : '@User.Identity.GetUserId()'})">Home</a></li>