标签: viewstate

如何创建Generic StateManagedCollection?

这里描述一个例子.但作者显然忘记包含下载代码.

这里显示另一个例子.但是,这个不太有效(如评论中所述).

你是怎么做到这一点的?

asp.net viewstate

8
推荐指数
1
解决办法
1150
查看次数

维护Asp.net mvc中的viewstate?

使用webforms的一个主要原因是易于维护viewstate.我想构建一个asp.net mvc应用程序,以便我有什么选择来维护viewstate?

亲切的问候

c# asp.net viewstate asp.net-mvc

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

GridView不记得回发之间的状态

我有一个简单的ASP页面与数据绑定网格(绑定到对象源).网格位于向导的页面内,每行都有一个"选择"复选框.

在向导的一个阶段,我绑定GridView:

protected void Wizard1_NextButtonClick(object sender, WizardNavigationEventArgs e)
    {
...
        // Bind and display matches
        GridViewMatches.EnableViewState = true;
        GridViewMatches.DataSource = getEmailRecipients();
        GridViewMatches.DataBind();
Run Code Online (Sandbox Code Playgroud)

单击完成按钮后,我会遍历行并检查所选内容:

protected void Wizard1_FinishButtonClick(object sender, WizardNavigationEventArgs e)
{
    // Set the selected values, depending on the checkboxes on the grid.
    foreach (GridViewRow gr in GridViewMatches.Rows)
    {
        Int32 personID = Convert.ToInt32(gr.Cells[0].Text);
        CheckBox selected = (CheckBox) gr.Cells[1].FindControl("CheckBoxSelectedToSend");
Run Code Online (Sandbox Code Playgroud)

但是在这个阶段GridViewMatches.Rows.Count = 0!我不重新绑定网格,我不应该,对吧?我希望视图状态能够维持状态.(另外,如果我重新绑定网格,我的选择复选框将被清除)

注意:此页面还在OnInit方法中动态添加用户控件.我听说它可能会破坏视图状态,但据我所知,我正确地执行它并且那些添加的控件的视图状态似乎有效(值在回发之间保持不变)

非常感谢您的任何帮助!

瑞安

更新:这可能与我以编程方式设置数据源的事实有关吗?我想知道asp引擎是否在页面生命周期中将网格数据绑定到尚未定义的数据源.(在测试页面中,GridView是'自动'数据绑定'.我不希望网格重新绑定我只想要来自上一篇文章的viewstate中的值!

此外,我在asp标题中有这个:ViewStateEncryptionMode ="Never" - 这是为了解决偶尔的"无效的Viewstate验证MAC"消息

作为参考,我的GridView定义如下:

<asp:GridView ID="GridViewMatches" runat="server" AllowSorting="True" AutoGenerateColumns="False" 
    BackColor="White" BorderColor="#E7E7FF" BorderStyle="None" BorderWidth="1px" CellPadding="3" 
    OnDataBinding="GridViewMatches_OnBinding"> …
Run Code Online (Sandbox Code Playgroud)

asp.net viewstate postback gridview

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

为什么asp.net将页面包装在表单中?

我是一名PHP开发人员,他必须参与ASP.net项目,我想知道为什么每个页面都包含在一个表单中.这对我来说没有意义.

还有什么与所有隐藏的输入字段,尤其是"视图状态"字段.

asp.net viewstate webforms

8
推荐指数
2
解决办法
2379
查看次数

php curl - 发布asp.net viewstate值

我有以下代码从本地站点登录表单(用PHP编写)登录到外部站点应用程序(asp.net app):

<?php
$curl_connection = curl_init('www.external.com/login.aspx');

curl_setopt($curl_connection, CURLOPT_CONNECTTIMEOUT, 30);
curl_setopt($curl_connection, CURLOPT_USERAGENT,
"Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)");
curl_setopt($curl_connection, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl_connection, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($curl_connection, CURLOPT_FOLLOWLOCATION, 1);

// Post data array
$post_data['LoginControl$UserName'] = 'ExampleUName';
$post_data['LoginControl$Password'] = 'ExamplePWord';

// Add form fields into an array to get ready to post
foreach ($post_data as $key => $value) 
  {
$post_items[] = $key . '=' . $value;
  }
$post_string = implode ('&', $post_items);

// Tell cURL which string to post
curl_setopt($curl_connection, CURLOPT_POSTFIELDS, $post_string);

// …
Run Code Online (Sandbox Code Playgroud)

php asp.net authentication viewstate curl

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

无法加载viewstate.正在加载viewstate的控制树必须与用于保存viewstate的控制树匹配

我目前正在为几个webproject工作一个动态核心.它有一个使用树视图和菜单的核心.然后对于每个特定的项目,它将几个不同的wuc加载到主要内容中.一些商业项目使用与业务相关的wuc,而另一些则使用不同的wuc.所以wuc的范围非常大.

现在我的问题是,每当用户按下menuitem或treeitem时,它会将wuc加载到链接到该对象的maincontent.

但是我有一些观点错误,我现在已经四处寻找,并且所解释的解决方案都没有适用于我的项目.

我所有的wuc都必须启用viewstate.

循环是 - >

页面(控件A)使用变量进行回发以将控件更改为wucPanel(UpdatePanel)中的ControlB.OnLoad LoadRequested Wuc.

目前的代码是

protected void Load_Page(object sender, EventArgs e)
{
//Code to decide which wuc to load.
 UserControl wucc = (UserControl)Page.LoadControl(sFilePath);        
 ParentControl.ContentTemplateContainer.Controls.Add(wucc);
}
Run Code Online (Sandbox Code Playgroud)

我已经尝试了几个修复,例如向wuc添加不同的id,但这要么解除控制器的内部功能,如处理程序等,要么生成相同的viewstate错误.

我发现的一个解决方案是加载ControlA然后只删除它然后加载ControlB.但这会禁用我的第三方控制器(Telerik)的脚本.

我也读过关于每种类型的不同PlaceHolders,但因为我希望有多达50种不同的控件,我觉得这不会对我有所帮助.

并且从Page_Load - > Page_Init移动生成了相同的错误.

错误:

无法加载viewstate.正在加载视图状态的控制树必须与在上一个请求期间用于保存视图状态的控制树匹配.例如,在动态添加控件时,在回发期间添加的控件必须与初始请求期间添加的控件的类型和位置相匹配.

asp.net viewstate controls dynamic telerik

8
推荐指数
1
解决办法
3万
查看次数

状态信息对此页面无效,可能已损坏.(仅限IE)

任何人都可以帮我解决这个例外.我尝试了几个修复,但没有任何效果.我只在IE(7,8和9)中获得此异常.

当我第一次加载页面时,它会显示一个下拉列表.我选择一个特定的供应商,它会发回一个页面并返回所需的信息.如果我更改供应商,它仍将加载信息.当我使用$ .ajax请求动态地将控件加载到页面上而不是返回并更改下拉列表选择(选择其他供应商)时,它会疯弃并给出以下异常.它再次发生在IE中.

The state information is invalid for this page and might be corrupted. 
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: The state information is invalid for this page and might be corrupted.

Source Error: 


[No relevant source lines]


Source File: c:\Users\tmalik\AppData\Local\Temp\Temporary ASP.NET Files\root\6691c708\751e6443\App_Web_a3kdfsht.2.cs    Line: 0 

Stack Trace: 


[FormatException: The input is …
Run Code Online (Sandbox Code Playgroud)

asp.net viewstate jquery internet-explorer

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

ASP.NET中的Viewstate和控件

我几天前发布了一个关于viewstate的问题,在运行了一些测试后,我得出了一些结论/结果.基于这些结果,我有一些关于某人如何做某些事情的问题.

以下是我运行的测试结果:

  1. 如果usercontrolA是从OnInitPage 加载的,那么他的viewstate将可用OnLoad.usercontrolA从其加载的所有其他控件OnInit将使其viewstate准备就绪OnLoad.
  2. 如果usercontrolA是从OnLoadPage 加载的,那么他的viewstate将可用OnPreRender.usercontrolA从其加载的所有其他控件OnLoad将在其中提供其viewstate OnPreRender.
  3. 如果usercontrolA是从一个页面的事件(例如:按钮单击.事件触发OnLoad之前和之后OnPreRender)加载的,那么他的视图状态将不可用.usercontrolA loades的所有其他控件都不会提供其viewstate.

因此,在完美的世界中,您总是会使用情境#1加载所有控件,以便他们的视图状态可用OnLoad.不幸的是,当你需要从一个点击按钮或从负载的控制OnLoad,是有没有办法控制之前得到它的ViewState的OnPreRender阶段?

我已经在viewstate上阅读了一堆文章并认为我理解它,但是在我当前的应用程序上加载加载其他用户控件的usercontrols,我真的很难在我的叶子上获得viewstate(最后在链中) )usercontrol.

任何建议和/或链接表示赞赏.

c# asp.net viewstate user-controls

8
推荐指数
1
解决办法
7004
查看次数

Panel的DefaultButton属性如何工作?

当您声明ButtonDefaultButton在ASP.NET中使用时会发生什么Panel?我知道ASP.NET会将Panel的内容呈现给a div并将一堆东西传递给ViewState.ViewState中是否有处理渲染Button的click事件的JavaScript?我认为ViewState就是那个 - 有关状态的信息.它是如何工作的?

javascript asp.net viewstate

8
推荐指数
1
解决办法
5043
查看次数

Can a client get to a button click event programmatically if the button is not rendered?

This is in ASP.NET web forms, I have a save button on a screen. When I load the page initially, under certain conditions, the save button is not rendered.

button1.visible = false
Run Code Online (Sandbox Code Playgroud)

In my button clicked event, I have this

public void button1_click(Object sender, EventArgs e)
{
    SaveData();
}
Run Code Online (Sandbox Code Playgroud)

The only security preventing the user being from being saved is on whether the save button is rendered.

In MVC, it would be trivial to access the save button action method …

c# asp.net viewstate webforms

8
推荐指数
1
解决办法
262
查看次数