掃二維碼與項(xiàng)目經(jīng)理溝通
我們?cè)谖⑿派?4小時(shí)期待你的聲音
解答本文疑問(wèn)/技術(shù)咨詢/運(yùn)營(yíng)咨詢/技術(shù)建議/互聯(lián)網(wǎng)交流
ASP.NET machineKey的作用

如果你的Asp.Net程序執(zhí)行時(shí)碰到這種錯(cuò)誤:“驗(yàn)證視圖狀態(tài) MAC 失敗。如果此應(yīng)用程序由網(wǎng)絡(luò)場(chǎng)或群集承載,請(qǐng)確保
ASP.NET machineKey生成的算法:
- validationKey = CreateKey(20);
- decryptionKey = CreateKey(24);
- protected string CreateKey(int len)
- {
- byte[] bytes = new byte[len];
- new RNGCryptoServiceProvider().GetBytes(bytes);
- StringBuilder sb = new StringBuilder();
- for(int i = 0; i < bytes.Length; i++)
- {
- sb.Append(string.Format("{0:X2}",bytes[i]));
- }
- return sb.ToString();
- }
附參考的ASP.NET machineKey配置:
- version="1.0"?>
validationKey="3FF1E929BC0534950B0920A7B59FA698BD02DFE8" decryptionKey="280450BB36319B474C996B506A95AEDF9B51211B1D2B7A77" decryption="3DES" validation="SHA1"/>
【編輯推薦】

我們?cè)谖⑿派?4小時(shí)期待你的聲音
解答本文疑問(wèn)/技術(shù)咨詢/運(yùn)營(yíng)咨詢/技術(shù)建議/互聯(lián)網(wǎng)交流