我想使用Razor在屏幕上打印變量。我有一個名爲CustomPrincipal的類保存在HttpContext中,保存正確。使用Razor在屏幕上打印變量(C#)
我希望它有它在一行如下面的例子,這是不幸的是沒有工作:
@* This is not working... *@
@(CustomPrincipal)Context.Items["IUser"].Name
下面的例子是工作的,因此它正確地保存它的HttpContext。
@{ CustomPrincipal user = (CustomPrincipal)Context.Items["IUser"]; }
@user.Name
有誰知道爲什麼第一個例子不工作,你能告訴我一個解決方案嗎?
錯誤是:
編譯器錯誤消息:CS0118: 'CustomPrincipal' 是 '類型',但使用類似 '變量'
你說的「不工作」是什麼意思?你有錯誤信息嗎?什麼都沒有顯示? – DavidG
閱讀[問],詳述「不工作」並分享你的研究成果。這是一個括號問題,您不能將字符串'Name'強制轉換爲'CustomPrincipal'。 – CodeCaster
您可能只需將'CustomPrincipal'對象封裝在parens中,否則它會嘗試將整行轉換爲該類型:'@(((CustomPrincipal)Context.Items [「IUser」])。Name)' – DavidG