2013-03-27 39 views
0

我的問題的Site.Master的內部的局部視圖類似於這樣一個問題:access database info in a partial view, .ascx that is included in Site.Master in asp.net mvc修改根據用戶ASP.NET MVC 3

我的Site.Master未綁定到視圖模型或控制器。我怎樣才能訪問我的Site.Master文件中加載的部分視圖內的用戶上下文?

+0

你能解釋一下嗎?到底要嘗試實現什麼? – 2013-03-27 16:54:42

+1

我懷疑這是一個XY的問題(http://meta.stackexchange.com/questions/66377/what-is-the-xy-problem)。請告訴我們你正在嘗試做的與此代碼,換句話說,你正在試圖解決的現實問題。 – 2013-03-27 17:12:30

+0

我有我需要用戶的asp.net ID來獲得有關用戶的其他信息的局部視圖。通常,如果我在Controller GET方法中,我可以調用AppUserInstance.Id。但我不在控制器中,所以我不能那樣做。感謝您的幫助。 – user2211833 2013-03-27 17:58:35

回答

0

您可以可能使用操作過濾器用於此目的。在動作過濾器中,您需要覆蓋OnActionExecuting方法並傳遞用戶上下文filterContext.Controller.ViewBag.UserContext

這個動態視圖包可以在任何地方的主文件中使用。

這是回答您的問題嗎?

編輯:

你需要一個類從ActionFilterAttribute 繼承你就可以ovverride其OnActionExecuting方法如下圖所示:

public override void OnActionExecuting(ActionExecutingContext filterContext) 
     {   
     //Your implementation here 
     base.OnActionExecuting(filterContext); 
     } 
+0

感謝您的答覆。什麼是filterContext – user2211833 2013-03-27 18:41:20