Dar*_*bio 17 c# asp.net-mvc action razor asp.net-mvc-3
获取在MVC3中返回View的Action名称的正确方法是什么?
我ViewContext.Controller.ValueProvider.GetValue("action").RawValue用来返回Action(Method)的名称,它在MVC3中创建了View.我在Partial View中返回它,它包含在Action返回的视图中.
它适用于Index,但是,当我尝试将它用于另一个方法名称时,它总是计算为false.
在即时窗口中,我得到以下结果:
ViewContext.Controller.ValueProvider.GetValue("action").RawValue
"Edit"
ViewContext.Controller.ValueProvider.GetValue("action").RawValue == "Edit"
false
Run Code Online (Sandbox Code Playgroud)
这是非常令人困惑的,因为第一个语句计算为值为"Edit"的字符串,而将其与字符串"Edit"进行比较则返回false?
奇怪的...
SLa*_*aks 53
RawValue是一个object,所以RawValue == "..."调用Object.op_Equality,通过引用而不是值进行比较.
呼叫 ViewContext.RouteData.GetRequiredString("action")
| 归档时间: |
|
| 查看次数: |
28895 次 |
| 最近记录: |