كيفية نسخ DataTable إلى SharePoint Splist؟
-
13-09-2019 - |
سؤال
لدي بيانات قائمة المصدر الخاصة بي في sourceList
جدول البيانات وترغب في نسخ البيانات إلى قائمته الجذرية.
كيف أقوم بذلك؟
private void MoveToTopTaskList(DataTable sourceList, SPSite DestinationSiteCollection)
{
SPWeb Destinationsite = DestinationSiteCollection.OpenWeb();
SPList DestinationList = Destinationsite.Lists[TASKS];
SPListItem DestinationListItem = DestinationList.Items.Add();
foreach (DataRow row in sourceList.Rows)
{
}
}
المحلول
أفضل نهج للحالة أعلاه هو استخدام pickebatchdata. طريقة Spweb هدف. سيساعدك ذلك في تحديث العناصر في القائمة إلى القائمة في الدفعة.
- تحتاج إلى إنشاء علامات XML تحتوي على تفاصيل لإدخال البيانات إلى القائمة.
- إذا كان لديك عدد كبير من السجلات التي سيتم إدراجها إلى القائمة فكر في التقسيم في دفعات أصغر. قل إذا كان لديك 1000 سجل تفعل ذلك في مجموعتين 500.
- أثناء بناء XML تأكد من استخدام stringbuilder. فئة لإلحاق السلسلة.
- إحالة هذه الروابط link1. link2. link3. لمزيد من المعلومات حول pickebatchdata.
في حال كنت ترغب في القيام بذلك باستخدام OM. ثم اتبع الرمز
`SPWeb Destinationsite = DestinationSiteCollection.OpenWeb();
SPList DestinationList = Destinationsite.Lists[TASKS];
SPListItem DestinationListItem = DestinationList.Items.Add();
foreach (DataRow row in sourceList.Rows)
{
DestinationListItem = DestinationList.Items.Add();
DestinationListItem["Field1"]=row["Col"].ToString();
DestinationListItem["Fieldn"]=row["Coln"].ToString();
DestinationListItem.Update()
}
`
لا تنتمي إلى StackOverflow