标签: viewstate

将ViewState移出页面?

我们正试图尽可能减轻页面负载.由于ViewState有时可以膨胀到100k的页面,我很乐意完全消除它.

我很想听听其他人用来将ViewState移动到自定义提供程序的一些技巧.

那说,一些警告:

  • 我们平均每小时为200万独立访客提供服务.
  • 因此,数据库读取在性能方面一直是一个严重的问题,因此我不想将ViewState存储在数据库中.
  • 我们也是负载均衡器的幕后推手,因此任何解决方案都必须与用户在每次回发时从一台机器反弹到一台机器.

想法?

asp.net viewstate scalability

10
推荐指数
2
解决办法
3485
查看次数

ASP.NET:无法验证数据

ASP.NET中此异常的原因是什么?显然它是一个视图状态异常,但我无法在抛出异常的页面上重现错误(带有按钮和导航链接的简单两个TextBox表单).

FWIW,我没有运营网络农场.

例外

错误消息:无法验证数据.

错误来源:System.Web

错误目标站点:字节[] GetDecodedData(字节[],字节[],Int32,Int32,Int32 ByRef)

发布数据

VIEWSTATE:

/ wEPDwULLTE4NTUyODcyMTFkZF96FHxDUAHIY3NOAMRJYZ + CKsnB

EVENTVALIDATION:

/ wEWBAK + 8ZzHAgKOhZRcApDF79ECAoLch4YMeQ2ayv/Gi76znHooiRyBFrWtwyg =

异常堆栈跟踪

   at System.Web.UI.ViewStateException.ThrowError(Exception inner, String persistedState, String errorPageMessage, Boolean macValidationError)
   at System.Web.UI.ObjectStateFormatter.Deserialize(String inputString)
   at System.Web.UI.ObjectStateFormatter.System.Web.UI.IStateFormatter.Deserialize(String serializedState)
   at System.Web.UI.Util.DeserializeWithAssert(IStateFormatter formatter, String serializedState)
   at System.Web.UI.HiddenFieldPageStatePersister.Load()
   at System.Web.UI.Page.LoadPageStateFromPersistenceMedium()
   at System.Web.UI.Page.LoadAllState()
   at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
   at System.Web.UI.Page.ProcessRequest(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
   at System.Web.UI.Page.ProcessRequest()
   at System.Web.UI.Page.ProcessRequestWithNoAssert(HttpContext context)
   at System.Web.UI.Page.ProcessRequest(HttpContext context)
   at ASP.default_aspx.ProcessRequest(HttpContext context)
   at System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
   at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)
Run Code Online (Sandbox Code Playgroud)

~William Riley-Land

asp.net viewstate validation exception

10
推荐指数
3
解决办法
4万
查看次数

asp.net viewstate加密

关于viewstate何时以及如何在asp.net 3.5中加密,我有几个问题.例如,如果我在web.config中有一个machinekey条目,如:decryptionKey ="AutoGenerate,IsolateApps"validation ="AES"decryption ="Auto"/>

此时是否加密了viewstate?或者我是否还需要在页面部分中指定viewStateEncryptionMode?

此外,是否可以加密formauthentication cookie,但不能同时加密viewstate?

谢谢你的帮助.

asp.net encryption viewstate

10
推荐指数
1
解决办法
8269
查看次数

在SessionPageStatePersister中保持ViewState

我想在会话中保持特定页面的视图状态,但是下面的代码块对我没有帮助,我可能会缺少什么?

所以这是我的页面的代码隐藏文件内容;

    public partial class ConfigurationEditorWebForm : PageBase
    {
        protected void Page_Load(object sender, EventArgs e)
        {
        }

        protected override bool VerifyAccess()
        {
            return true;
        }

        protected override PageStatePersister PageStatePersister
        {
            get
            {
                return new SessionPageStatePersister(this);
            }
        }
    }
Run Code Online (Sandbox Code Playgroud)

asp.net viewstate session

10
推荐指数
1
解决办法
9999
查看次数

10
推荐指数
1
解决办法
6573
查看次数

如何在asp.net中最小化页面的视图状态大小?

如何在asp.net中最小化页面的视图状态大小?请帮忙.

asp.net viewstate

10
推荐指数
2
解决办法
1万
查看次数

ASP.NET:压缩ViewState

压缩ASP.NET ViewState内容的最新和最好的方法是什么?

这个表现怎么样?保持页面快速并最小化数据流量是否值得?

我怎么做:

<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" 
value="/wEPDwUKMTM4Mjc3NDEyOWQYAQUeX19Db250cm9sc1JlcXVpcmVQb3N0QmFja0tleV9fFgkFLGN0b
DAwJENvbnRlbnRQbGFjZUhvbGRlcl9NYWluQ29udGVudCRSYWRCdXQxBSxjdGwwMCRDb250ZW50UGxhY2VIb
2xkZXJfTWFpbkNvbnRlbnQkUmFkQnV0MQUsY3RsMDAkQ29udGVudFBsYWNlSG9sZGVyX01haW5Db250ZW50J
FJhZEJ1dDIFLGN0bDAwJENvbnRlbnRQbGFjZUhvbGRlcl9NYWluQ29udGVudCRSYWRCdXQyBSxjdGwwMCRDb
250ZW50UGxhY2VIb2xkZXJfTWFpbkNvbnRlbnQkUmFkQnV0MwUsY3RsMDAkQ29udGVudFBsYWNlSG9sZGVyX
01haW5Db250ZW50JFJhZEJ1dDQFLGN0bDAwJENvbnRlbnRQbGFjZUhvbGRlcl9NYWluQ29udGVudCRSYWRCd
XQ0BSxjdGwwMCRDb250ZW50UGxhY2VIb2xkZXJfTWFpbkNvbnRlbnQkUmFkQnV0NQUsY3RsMDAkQ29udGVud
FBsYWNlSG9sZGVyX01haW5Db250ZW50JFJhZEJ1dDXz21BS0eJ7991pzjjj4VXbs2fGBw==" />
Run Code Online (Sandbox Code Playgroud)

进入这样的事情:

<input type="hidden" name="__VIEWSTATE"  id="__VIEWSTATE" 
value="/wEPDwUKMTM4Mjc3N==" />
Run Code Online (Sandbox Code Playgroud)

compression asp.net viewstate webforms

10
推荐指数
4
解决办法
1万
查看次数

ASP.NET中maxPageStateFieldLength的最佳值是多少?

在具有跨越10-15KB的viewstate的页面中,这将是最佳值

<pages maxPageStateFieldLength="">

在web.config中为了降低潜在截断的风险导致viewstate验证错误?

asp.net viewstate

10
推荐指数
1
解决办法
8728
查看次数

如何删除或压缩您的asp.net视图状态

花了很多时间从应用程序中驱逐asp.net的大型(但可以理解的有用)视图状态,我认为值得分享它是如何完成的.

基本上,我希望这个问题对缩小/压缩/删除视图状态的所有解决方案开放.

c# asp.net viewstate

10
推荐指数
3
解决办法
4710
查看次数

验证视图状态MAC失败

可能重复:
设置ViewStateUserKey为我提供了"验证viewstate MAC failed"错误

我已经在StackOverflow上应用了帖子的解决方案但是他们没有解决我的问题.

问题的细节是:

Validation of viewstate MAC failed. If this application is hosted by a Web Farm or cluster, ensure that <machineKey> configuration specifies the same validationKey and validation algorithm. AutoGenerate cannot be used in a cluster.

Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code. 

Exception Details: System.Web.HttpException: Validation of viewstate MAC failed. If …
Run Code Online (Sandbox Code Playgroud)

asp.net viewstate

10
推荐指数
2
解决办法
6万
查看次数