Я с помощью объектной модели SharePoint с помощью консольного приложения на том же сервере, что и установки SharePoint, и, используя следующий код:Необъяснимая задержка при назначении строку в поле SPListItem
SPSite MySite = new SPSite("http://server/");
SPWeb MyWeb = MySite.OpenWeb();
MyWeb.AllowUnsafeUpdates = true;
SPList MyList = MyWeb.Lists["Test"];
const string EmptyQuery = "0";
SPQuery q = new SPQuery { Query = EmptyQuery };
String Source = "Test String";
for(int i = 1; i < 1000; i++)
{
Console.WriteLine("Creating new item");
SPListItem MyItem = MyList.GetItems(q).Add();
Console.WriteLine("Created new item");
Console.WriteLine("Assigning Title Value");
MyItem["Title"] = Source.ToString();
Console.WriteLine("Assigned Title Value");
MyItem.Update();
}
Я получаю несколько секунд паузы между «Присвоение значения титула» и «Назначенное значение названия».
Когда я развертываю код как веб-часть, ее мгновенная, задержка возникает только тогда, когда код развертывается в качестве консольного приложения.
Редактировать: Дополнительная информация! Когда у меня назначено более одного поля, его всегда первое медленное, все последующие назначения выполняются так быстро, как ожидалось. Если я переключаю порядок полей вокруг, это не влияет на задержку - первое поле всегда медленное.
Любые мысли?
Работа без отладчика не имеет никакого эффекта, такая же задержка возникает. – Moo