我正在为表单字段分配一个GUID,但它没有与表单一起提交。
<asp:HiddenField ID=GuidToken" runat="server"/>
//伪造的代码
GuidToken = [valid guid];
//check that guid successfully assigned - yes
提交表单后,我会提取所有表单值:
Request.Form["GuidToken"]
其他值很好,但上面是空的。这是guid特有的东西吗?
答案 0 :(得分:3)
您使用Request.Form
是否有原因?你应该使用
Guid myGuid = Guid.Parse(GuidToken.Value);
如果你仍然想使用我不推荐使用的Request.Form,那么隐藏字段控件的名称已被asp.net更改,因此该集合不包含您指定的内容,因为它添加了一些自动生成的命名约定它。它现在看起来像这样
Request.Form["ctl00$MainContent$GuidToken"]
调试模式
答案 1 :(得分:2)
我不确定你要完成什么。但您可能需要考虑使用会话变量来存储和传递&#39;您的令牌GUID到不同的页面?
Session["GuidToken"] = myGeneratedGUID;
以后
var retrievedGUID = Session["GuidToken"];
请务必检查NULL,会话可以在POST之间过期。