Questions tagged «viewstate»

7
如何在ASP.NET中进行更多控制?
我正在尝试构建一个非常非常简单的“微型Web应用程序”,我怀疑如果我能完成的话,它将引起一些Stack Overflow的关注。我将其托管在我的C#深度站点中,该站点是原始ASP.NET 3.5(即非MVC)。 流程非常简单: 如果用户使用未指定所有参数的URL进入应用程序(或者其中任何一个无效),我只想显示用户输入控件。(只有两个。) 如果用户输入的应用程序与一个URL 做具有所有必需的参数,我想显示的结果和输入控件(使他们能够改变参数) 这是我的自我要求(设计和实现的混合): 我希望提交使用GET而不是POST,主要是为了让用户可以轻松地为页面添加书签。 我不希望URL在提交后最终看起来很傻,上面有多余的点点滴滴。请提供主要网址和真实参数。 理想情况下,我想完全避免使用JavaScript。这个应用程式没有充分的理由。 我希望能够在渲染期间访问控件并设置值等。特别是,如果ASP.NET无法自动执行此操作,则希望将控件的默认值设置为传入的参数值对我来说(在其他限制之内)。 我很高兴自己完成所有参数验证,并且不需要太多服务器端事件。在页面加载时设置所有内容,而不是将事件附加到按钮等,这非常简单。 大部分都可以,但是我还没有找到完全删除viewstate并保留其余有用功能的任何方法。使用此博客文章中的文章,我设法避免获得viewstate的任何实际值 -但它仍然作为URL上的参数而结束,这看起来确实很丑陋。 如果我将其设置为普通的HTML表单而不是ASP.NET表单(即取出runat="server"),则不会获得任何神奇的viewstate-但是我无法以编程方式访问控件。 我可以通过忽略大多数ASP.NET并使用LINQ to XML构建XML文档并实现来完成所有这些工作IHttpHandler。不过感觉有点低。 我意识到我的问题可以通过放松约束(例如使用POST而不关心多余的参数)或使用ASP.NET MVC来解决,但是我的要求真的不合理吗? 也许ASP.NET不会缩小到此类应用程序?但是,有一个非常可能的选择:我只是愚蠢,而且有一种我还没有发现的非常简单的方法。 有什么想法吗?(提示有关强大力量如何下落的提示,等等。没关系-我希望我从未声称自己是ASP.NET专家,因为事实恰恰相反。)


12
是什么导致此“ Base-64 char数组的长度无效”
我在这里很少。我无法在本地复制此消息,但是当用户收到错误消息时,我会收到自动的电子邮件异常通知: Invalid length for a Base-64 char array. at System.Convert.FromBase64String(String s) 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() 我倾向于认为分配给viewstate的数据存在问题。 例如: List<int> SelectedActionIDList = GetSelectedActionIDList(); ViewState["_SelectedActionIDList"] = SelectedActionIDList; 如果无法在本地重现错误,则很难猜测错误的来源。 如果有人对此错误有任何经验,我真的很想知道您发现了什么。

6
Base-64 char数组的长度无效
如标题所示,我得到: Base-64 char数组的长度无效。 我已经在这里阅读了有关此问题的信息,并且似乎建议将ViewState如果较大则存储在SQL中。我正在使用具有大量数据收集功能的向导,因此我的ViewState很大。但是,在我转向“数据库存储”解决方案之前,也许有人可以看看并告诉我是否还有其他选择? 我使用以下方法构造要发送的电子邮件: public void SendEmailAddressVerificationEmail(string userName, string to) { string msg = "Please click on the link below or paste it into a browser to verify your email account.<BR><BR>" + "<a href=\"" + _configuration.RootURL + "Accounts/VerifyEmail.aspx?a=" + userName.Encrypt("verify") + "\">" + _configuration.RootURL + "Accounts/VerifyEmail.aspx?a=" + userName.Encrypt("verify") + …
91 c#  asp.net  viewstate  base64 

8
缓存与会话的优势
在会话和缓存中存储数据表有什么区别?优点和缺点是什么? 因此,如果它是一个简单的搜索页面,它会在数据表中返回结果并将其绑定到gridview。如果用户'a'搜索和用户'b'搜索,最好将其存储在Session中,因为每个用户很可能会有不同的结果,或者我是否仍可以将他们的每个搜索存储在Cache中,或者没有意义,因为存在只有一个缓存。我想基本上我想说的是缓存将被覆盖。
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.