我已經編寫了代碼發送帶有指向URL的鏈接的電子郵件,用戶必須點擊該鏈接進行確認。緩衝區不能爲空。參數名稱:緩衝區
但是,當用戶點擊鏈接時,在瀏覽器中打開得到,但顯示以下錯誤。
「緩衝區不能爲空參數名:緩衝區」
請找到堆棧跟蹤如下:
[ArgumentNullException: Buffer cannot be null.
Parameter name: buffer]
System.IO.MemoryStream..ctor(Byte[] buffer, Boolean writable) +9629927
System.IO.MemoryStream..ctor(Byte[] buffer) +6
Auth.IdentityTokenXChangeData.Deserialize(String base64Package) +187
Auth.IdentityTokenXChange.TrySniffIdentityToken(HttpRequest req, String& sessionId, String& sessionTag, String& returnUrl) +244
Auth.IdentityModule.OnBeginRequest(Object sender, EventArgs e) +365
System.Web.SyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +220
System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +120`
這是吃了我的一天。任何建議都會有很大的幫助。
上了錯誤的線索.. 我相信問題是與編碼值的查詢字符串
("F960866879F669E=Tw5NpFeW9HsAqc_Ap5dmOwqkZ041pFQGYLxRV-puumtHsfhrTYtDe51uCbGV44Kc1X3n6cggsynfqRmh74ie535ymkvATeK5Jii11tOMIZDZ_GVB8QolLeMU5i6KWEZculKhM0IOhYFaMc-DsB") -
的Base64編碼解碼正在返回「空」因爲某些原因。
Method -
'System.Web.HttpServerUtility.UrlTokenDecode
("F960866879F669E=Tw5NpFeW9HsAqc_Ap5dmOwqkZ041pFQGYLxRV-puumtHsfhrTYtDe51uCbGV44Kc1X3n6cggsynfqRmh74ie535ymkvATeK5Jii11tOMIZDZ_GVB8QolLeMU5i6KWEZculKhM0IOhYFaMc-DsB")'
任何想法爲什麼它返回null?它不是一個有效的Base64編碼?
有沒有想過你的問題? –