2010-01-15 86 views
3

我有一個WCF服務,它有一個方法來返回使用該服務的Silverlight客戶端的Windows用戶名。 WCF服務正在使用basicHttpBinding,TransportCredentialOnly模式集和TransportClientCredentialType設置爲Windows。在IIS中,啓用Windows身份驗證並禁用匿名身份驗證。HttpContext.Current.User始終爲空

儘管(顯然)我調用服務時正確配置服務,並要求它返回錯誤的用戶名。更仔細的檢查顯示HttpContext.Current.User始終爲空(因此拋出nullreferenceexception)。

有沒有人有任何其他的想法,爲什麼這是行不通的?

回答

4

嘗試增加 -

<serviceHostingEnvironment aspNetCompatibilityEnabled="true" /> 

到您的配置文件

+2

工作感謝!另外值得注意的是,您還需要爲您的課程添加[AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Required)] – Calanus 2010-01-15 15:39:08