2016-07-22 148 views
1

在我的控制器類,我可以做到這一點:可以訪問HttpActionContext我的Web API外兩個控制器

var userId = this.ActionContext.RequestContext.Principal.Identity.Name; 

,但我有我想通過這個值到SOAP頭。使用soap標頭的行爲是使用我的依賴注入來設置的。因此,雖然它是爲每個呼叫創建的,但並不是在Controller中創建的。

所以我想知道,有沒有一種方法可以訪問控制器外的Web API 2的HttpActionContext。理想我想是這樣的:\

HttpActionContext.CurrentInstance.RequestContext.Principal.Identity.Name; 

但當然CurrentInstance不存在爲HttpActionContext靜態成員。

但是有沒有其他的方式來得到這個沒有控制器?

+0

如果目標是獲得訪問主要然後訪問標識名稱,你可以得到它形成螺紋或HttpContext的。 – Nkosi

回答

2

您可以通過以下

System.Web.HttpContext.Current.User.Identity.Name 
+0

只有在引入System.Web時纔可以使用,並且由於性能原因不可取 –

相關問題