У меня есть веб-часть, которая на 2-3 сайта вниз по сайту верхнего уровня. Мне нужно запросить список, который находится в верхнем семействе сайтов и один на том же уровне, я думаю, это возможно через SPSiteDataquery ... У меня есть некоторая путаница, связанная с этим, я могу написать один запрос, который может запросить оба этих списка ....
Объем этого запроса - sitecollection, так что это означает, что он будет просматривать весь список в sitecollection ... и если мой CAML-запрос одинаков для обоих этих списков ... он должен работать?
позвольте мне объяснить через мой код:
SPSite mySite = SPControl.GetContextSite(Context);
SPWeb myWeb = SPControl.GetContextWeb(Context);
SPSiteDataQuery qry = new SPSiteDataQuery();
qry.Lists = "<Lists BaseType='0' />";
qry.Query = "<Where><Contains><FieldRef Name='Country'/><Value Type='Text'>" + strcount + "</Value></Contains></Where>";
qry.ViewFields = "<FieldRef Name='Capital' Nullable='TRUE'/><FieldRef Name='Currency' Nullable='TRUE'/>";
qry.Webs = "<Webs Scope='SiteCollection' />";
DataTable dt = myWeb.GetSiteData(qry);
Теперь мне нужна валюта из списка, который находится на сайте верхнего уровня, и капитал из списка, который находится на том же уровне. Это возможно? или я неправильно понял SPSiteDataQuery ...?