在SP2010中使用托管元数据时遇到了一个非常严重的问题,我可以在其中设置分类会话,术语库和术语,但是当我尝试从术语集中检索术语时,我得到一个TermStoreOperationException,表示它“无法读取或写入数据库“。
有没有人知道为什么我可以获得期限而不是条款?我不太明白为什么当他们都在同一个数据库中时,我可以得到它而不是其中的术语。
我正在使用的代码如下:
TaxonomySession txSession = new TaxonomySession(site, true);
TermStore termStore = txSession.DefaultSiteCollectionTermStore;
TermSet termSet = termStore.GetTermSet(TermSetId);
TermCollection termCollection = termSet.GetTerms("My Term", true); //exception thrown on this line.
任何想法或见解或解决方案都会非常感激。
谢谢堆!
答案 0 :(得分:2)
我设法通过使用术语集上的索引器来获取术语:
TermSet termSet = termStore.GetTermSet(txField.TermSetId);
Term myTerm = termSet.Terms["My Term"]);
我不确定为什么.GetTerms()不起作用 - 可能是因为SP2010仍然不是RTM而且它意味着内部方法,或者超出我理解的其他一些神秘的原因...