惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

C
CXSECURITY Database RSS Feed - CXSecurity.com
Stack Overflow Blog
Stack Overflow Blog
月光博客
月光博客
T
Threat Research - Cisco Blogs
小众软件
小众软件
有赞技术团队
有赞技术团队
酷 壳 – CoolShell
酷 壳 – CoolShell
Apple Machine Learning Research
Apple Machine Learning Research
C
Cyber Attacks, Cyber Crime and Cyber Security
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
T
Tailwind CSS Blog
Cisco Talos Blog
Cisco Talos Blog
V
V2EX
博客园 - 【当耐特】
C
Cybersecurity and Infrastructure Security Agency CISA
Hugging Face - Blog
Hugging Face - Blog
The Cloudflare Blog
The Last Watchdog
The Last Watchdog
Simon Willison's Weblog
Simon Willison's Weblog
T
Threatpost
S
Secure Thoughts
O
OpenAI News
P
Proofpoint News Feed
S
SegmentFault 最新的问题
Forbes - Security
Forbes - Security
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
Application and Cybersecurity Blog
Application and Cybersecurity Blog
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
Last Week in AI
Last Week in AI
宝玉的分享
宝玉的分享
Scott Helme
Scott Helme
T
Tenable Blog
A
Arctic Wolf
L
LINUX DO - 热门话题
爱范儿
爱范儿
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
www.infosecurity-magazine.com
www.infosecurity-magazine.com
V
Visual Studio Blog
Hacker News: Ask HN
Hacker News: Ask HN
Hacker News - Newest:
Hacker News - Newest: "LLM"
腾讯CDC
博客园 - Franky
WordPress大学
WordPress大学
Know Your Adversary
Know Your Adversary
博客园_首页
雷峰网
雷峰网
IT之家
IT之家
PCI Perspectives
PCI Perspectives
L
LINUX DO - 最新话题
H
Heimdal Security Blog

博客园 - Michael Zhang

MacBook Home End SLES Install cucumber soapui test web services S/4 HANA Solution Manager Linux下创建新用户 su with hyphen and without - su带横杠和不带横杠 2008 R2中的无线连接 wireless 不实用,还小有点意思-IE6 UI测试中的小发现 [转载]一个回收站小工具---RecycleBin Gotcha 尝试改变Survey完成后的默认行为(JavaScript) 添加新的站点栏目类型(New Custom Field (Column) Type) 完全控制SharePoint站点菜单(Get full control of SharePoint ActionMenus) Part 1 从WSS 3.0到MOSS 2007 WSS文档库备份及复制 如何备份sharepoint中的文档库? Document Library中Server Menu问题(New和Upload菜单消失) 站点迁移 从单机到服务器场 从上海到大连 又出现两个问题 关于Alert和WebDAV Sharepoint 2007 Forms认证与File Not Found错误
SharePoint开发中的小点滴 Document Library的URL
Michael Zhang · 2009-02-10 · via 博客园 - Michael Zhang

SharePoint的Document Library是存储数据的好地方,我们的项目在里面存了很多图纸,图纸之间有引用关系,所以我做了一个页面来显示图纸的引用关系,工作过程如下:

点击某个图纸文件, 弹出菜单,选择-->查看引用, 这时跳转到自己做的页面,同时通过url传入了文件路径, Source和RootFolder参数.

利用文件路径获得与之有引用关系的图纸,并显示他们.

代码如下(省略生成Query的业务代码):

                    using (SPSite site = new SPSite(source))
                    {
                        SPWeb web = site.OpenWeb();
                        web.AllowUnsafeUpdates = true;
                        SPListItem item = web.GetListItem(fileUrl);
                        SPList list = item.ParentList;

                        string listGuid = HttpUtility.ParseQueryString(SPEncode.UrlDecodeAsUrl(source))["ShowWebPart"];
                        source = source.Substring(0, source.IndexOf(".aspx") + 5);

                        SPView my = source.Contains("PersonalViews.aspx") ? list.Views[new Guid(listGuid)] : web.GetViewFromUrl(source);

                        //根据是Personal还是Public,分别获得SPView对象
                        my.Scope = SPViewScope.Recursive;//搜索范围是整个library的文件
                        SPQuery myq = new SPQuery(my);

                        myq.Query = query;

                        refContent.Text = list.RenderAsHtml(myq);//显示结果=SPView的样式和定义+自己的查询

                        web.AllowUnsafeUpdates = false;
                    }

其中当引用的图纸文件在同级或下一级文件夹中时,正常显示, 如果是在上一级中, 就不显示,

而通过调用list.GetItems(myq).Count.ToString()发现,Query确实能查询到有符合条件的文件存在.

在经历了4个小时左右的摸索后,突然想到是不是地址栏中RootFolder在作怪,

因为代码中并没有用到RootFolder,直接去掉,显示正常!

原来甚至通过list.RenderAsHtml(myq)获得的结果还是会受到地址栏里RootFolder的影响.

估计没有人会遇上我这个问题了,不过还是记录一下吧,提醒自己和大家以后注意sharepoint对地址URL的使用.