2011-04-11 38 views
1

我在windows7 + iis7.5 + windows身份驗證+ asp.net4上創建了一個新的hello world應用程序。 上面我的配置是successed用這行代碼來獲取用戶名:當將.net1.1 webapp遷移到.net4時,用戶名字符串爲空。

Request.RequestContext.HttpContext.User.Identity.Name. 

但是當我嘗試在我的web應用程序的代碼相同的線,從asp.net1.1但使用遷移上面的配置相同,我得到一個空字符串,爲什麼?

回答

0

,因爲你嘗試從非安全頁面問這個你可能會得到一個空字符串,並在你的web.config中的requireSSL="true"

設置如果已設置requireSSL同時=」真「,那麼檢查和閱讀用戶的cookie只能從https頁面獲取。

也檢查你所設定的domain="yourdomain.com"

這個設置是在web.config中

<authentication mode="Forms"> 
    <forms name=".youkeyname" path="/" requireSSL="true" domain="yourDomain.com" /> 
</authentication> 
+0

我沒有發現我的web應用程序項目「requireSSL」。 – 2011-04-11 12:39:15

+0

@yaron在web.config上進行身份驗證,默認情況下可能爲true,如果您想查看是否爲真,請嘗試將其設置爲false。 – Aristos 2011-04-11 12:58:04

+0

web.config中沒有requireSSL。你可以寫我需要添加到我的web.config的行。謝謝。 – 2011-04-11 13:06:09