服务器相对列表URL不起作用(链接中的奇怪字符)

时间:2013-03-04 12:28:01

标签: c# sharepoint sharepoint-2010 timer-jobs relative-url

我对服务器对象模型有一些奇怪的问题...我正在创建timerjob,它必须只运行item.update()函数,其余工作由事件接收器完成。

server url - demo2010a:2010

sitecolletion url - http://www.contoso.com/sites/test/

list url - http://www.contoso.com/sites/test/Lists/Zadania%20naprawcze%20t/

问题在于:

        SPSite site = new SPSite("http://www.contoso.com/sites/test/");
        SPWeb web = site.OpenWeb("sites/test");

        SPList ldk_List = web.GetList("http://www.contoso.com/sites/test/Lists/Zadania naprawcze t"); //this is working fine ! but i cant use absolute URL !!!
        SPListItem item = ldk_List.GetItemById(5);
        item["Title"] = "testestestestes";
        item.Update();

这是我的“测试”代码。列表名称是“Zadania Naprawcze -t”在url中看起来很奇怪,但它正在使用http://www.contoso.com/sites/test/Lists/Zadania naprawcze t我需要类似:web.GetList("/sites/Zadania Naprawcze -t");或者我试图削减-等的东西有人可以告诉我该怎么办?所有代码都作为计时器作业运行。

1 个答案:

答案 0 :(得分:1)

你的问题不是很清楚。 “Lists / Zadania naprawcze t”有效并且是列表的URL。 “/ Lists / Zadania%20naprawcze%20t /”与刚编码的内容相同(%20 =空格)。现在您问的是-t,您从哪里获得-列表标题列表网址之间存在差异,您知道吗? GetList 方法要求您提供列表网址,您还可以使用SPListCollection.TryGetList方法提供列表标题(web.lists.TryGetList())。