2011-08-03 7 views
0

현재 일부 기존 문서 목록이있는 문서 라이브러리를 만들 때 Sharepoint 2010 및 Sharepoint API를 사용하고 있습니다.Sharepoint 2010 메타 데이터 필드 키, 값

주어진 도큐멘트 목록을 반복하는 WinForm을 만든 다음 문서의 '유형 (메타 데이터 필드)'에 따라 다른 문서 라이브러리에 추가합니다. 유형은 특정 문서에 대한 "메타 데이터 필드"를 읽음으로써 결정됩니다. 메타 데이터 필드의 Hashtable을 만들어 읽기 SPFields

  • 질문

문서 메타 데이터 필드는 '형식'을 determin을 읽을 때, 나는 Metadatafield '유형'(Key) 실제로 꺼내서 것을 깨달았다 'Type + TaxHTField0'및 Key의 값이 값으로 추출됩니다. | GUID

예를 들어, 내 메타 데이터 필드가 t에서 돌아 오면 Doc_x0020_Type이라고하면 우리가 추가 부르는 것들은를 추가 eleminate하는 SharePoint 및 메타 데이터의 키와 값 모두에 GUID에서 설정할 수있는 설정이 있습니까 그는 그것이 Doc_x0020_TypeTaxHTField0으로이 값은 단지 'products'해야 나오는 무슨 API하지만

products|21EC2020-3AEA-1069-A2DD-08002B30309D 

로 나온다 전지? 다음은

은 우리가 셰어

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); 
    } 

답변

0

이것은 의도적으로 설계된에서 설정할 수있는 설정입니다 경우이 문제를 해결하기 위해 수행하지만, 궁금해 한 것입니다.

자신의 콘텐츠 형식 (예 : 'MyTaxField')에 분류 필드를 추가하면 SharePoint는 UI에서 선택한 값의 레이블과 GUID가 포함 된 숨겨진 'Notes'필드를 자동으로 생성합니다.

SPSiteDataQuery를 사용할 때 이것은 여러 값을 허용하는 분류 필드에 대해 빈 값을 반환하므로 매우 유용합니다 (단일 값 택 소노 미 필드에서는 작동 함).

택 소노 미 값을 얻는 유일한 방법은 'MyTaxFieldTaxHTField0'이라는 숨겨진 필드에 대해 a를 사용하는 것입니다.

그러나 발견 한 것처럼이 필드는 다음과 같은 형식으로 표시되지 않을 수 있습니다. :)

아직 테스트하지 않았지만 contenttype에 "Doc_x0020_Type"(TaxonomyFieldValue (Collection) 유형 가능) 필드가 있는지 확인 했습니까?

+0

예 "Doc_x0020_Type"이 포함되어 있습니다. 어쨌든 나는 그 후에 무엇을했는지입니다. 의견을 주셔서 감사합니다 .. – Chin

관련 문제