gpt4 book ai didi

c# - 如何删除 ASP.NET 控件中的 ViewState 和 EventValidation 数据呈现为字符串?

转载 作者:太空宇宙 更新时间:2023-11-03 11:31:23 26 4
gpt4 key购买 nike

我正在使用以下方法将用户控件呈现为字符串:

Page pageHolder = new Page();
pageHolder.EnableViewState = false;

UserControl viewControl = (UserControl)pageHolder.LoadControl(path);
viewControl.EnableViewState = false;

System.Type viewControlType = viewControl.GetType();
HtmlForm tempForm = new HtmlForm();
tempForm.EnableViewState = false;

tempForm.Controls.Add(viewControl);
pageHolder.Controls.Add(tempForm);

StringWriter output = new StringWriter();
HttpContext.Current.Server.Execute(pageHolder, output, false);

string content = output.ToString();

但是,在输出中,有时隐藏字段带有 __EVENTVALIDTION__VIEWSTATE 信息以及用于启用 PostBack 的 JavaScript。

有没有办法完全禁止为我要呈现的控件生成所有 WebForms/ViewState 相关代码?将 EnableViewState 设置为 false 并在 .ascx 文件中设置 EnabledViewState="false" 似乎不起作用。

最佳答案

你试过吗

<pages enableViewState="false" enableEventValidation="false">
...
</pages>

在你的 web.config 上?

我不确定这在一般情况下是不是个好主意,但我假设您知道自己在做什么。

关于c# - 如何删除 ASP.NET 控件中的 ViewState 和 EventValidation 数据呈现为字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7652859/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com