关于.NET开发中遇到的一个验证视图状态Mac失败的解决方法随笔

  近日,在开发过程中遇到一个很头疼的问题:验证视图状态Mac失败。

关于.NET开发中遇到的一个验证视图状态Mac失败的解决方法随笔_第1张图片

  先开始在webconfig中加入了一个machineKey,问题暂时没有出现。后来又出现了,原来是在LinkButton控件中执行了WebForm_DoPostBackWithOptions事件,即PostBackUrl实现跨页面提交数据造成。<asp:LinkButton runat="server" PostBackUrl="......" />,如果在导航栏中用这种方式实现页面跳转,那么在一个页面有多个PostBackUrl时,当你快速的来回点击导航栏就可能会出现上面的错误。

我自己的解决办法是将LinkButton全部用<a herf="......">来代替LinkButton实现页面的跳转功能。

你可能感兴趣的:(.net)