В настоящее время я работаю с Sharepoint 2010 и API Sharepoint над созданием библиотеки документов с некоторыми существующими списками документов.
Я создал WinForm, которая просматривает заданные списки документов и затем добавляет их в различные библиотеки документов в зависимости от типа * (поле метаданных) документа. Тип определяется путем чтения «Поля метаданных» для конкретного документа. Поля метаданных читаются путем создания Hashtable
из SPFields
Когда поле метаданных документа считывается для определения «Типа», я понял, что поле метаданных «Тип» (Key)
фактически вытягивается как «Тип + TaxHTField0», а значение для Key
выводится как значение | GUID
Так, например, если мое поле метаданных называется Doc_x0020_Type
, когда оно возвращается из API, оно получается как Doc_x0020_TypeTaxHTField0
, значение для этого должно быть просто 'products'
, но оно выходит как
products|21EC2020-3AEA-1069-A2DD-08002B30309D
Есть ли настройка, которую мы можем установить в sharepoint, чтобы упростить добавление дополнительных символов и GUID к ключу и значению для полей метаданных?
Ниже я сделал то, что я сделал, чтобы исправить проблему, но подумал, можно ли эту настройку установить в sharepoint
public String GetLibrary(Hashtable itemProperties)
{
String typeMetaField = "Doc_x0020_TypeTaxHTField0";
String sKey = String.Empty;
foreach (DictionaryEntry deEntry in itemProperties)
{
sKey = deEntry.Key.ToString();
if (sKey == typeMetaField){
_type = deEntry.Value.ToString();
string[] value = _type.Split('|');
_type = value[0].Trim();
}
}
return GetDocumentLibrary(_type);
}