0

我们有以下代码返回值“3”,尽管没有值作为查询字符串传递。是否有某种方式“id”卡在服务器内存中(因为它不是用户特定的)或者“id”是一个特殊值。有任何想法吗?

if (Page.Request.QueryString["id"] != null)
{
Page.Trace.Write("Query String Key Found");
ListItemID = HttpContext.Current.Request.QueryString["id"];
}

这是在 SharePoint 2007 Webpart 中。

4

4 回答 4

0

通常,当添加 webpart 时,它可用于输入的所有参数都会被分配一个默认值,例如,将 dataformwebpart 添加到 ampty 页面并将其绑定到列表。然后打开页面的源代码。您会在那里看到一堆参数绑定,它们又可以绑定到查询字符串。如果您的 Web 部件被分配了 ListItemId 的默认值,您能做到吗?

还是您实际上是在调试并进入这段特定的代码,而 id 查询字符串变量实际上包含 3?如果是这样,我同意其他答案之一,请使用 Fiddler 检查打开页面时进行了多少 http 调用。

于 2009-10-15T00:12:26.697 回答
0

如果 Web 部件位于通过单击上一页中的列表项导航到的页面上;您将看到该列表项的 ID。

于 2009-10-14T22:28:20.217 回答
0

某处可能有一个带有参数的帖子(或 GET),对您隐藏。查询字符串是过去的 GET 变量,没有“卡住”或“服务器内存”。

使用HTTPAnalyzerFiddler之类的工具来分析 HTTP 流量。这将向您显示谁在提出什么请求。尽管它可能是您在 Sharepoint 中单击的控件的 ID。

于 2009-10-14T22:30:09.297 回答
0

清除浏览器缓存。

于 2009-10-14T22:43:16.980 回答