Hello,
To get a value(s) from Taxonomy field in SharePoint 2013 can be achieved like that:
The example is being used in an Event Receiver
SPListItem newPage = properties.ListItem;
SPField seoKeywords = newPage.Fields.GetFieldByInternalName(CommonConsts.SEO.SeoKeywords);
SPField keywordTags = newPage.Fields.GetFieldByInternalName(CommonConsts.SiteColumns.KeywordTagsName);
List seoKeywordsValues = new List();
if (newPage[seoKeywords.Id] != null)
{
seoKeywordsValues = new List(newPage[seoKeywords.Id].ToString().Split(';'));
}
TaxonomyFieldValueCollection keywordTagsValues = newPage.ListItems[0][keywordTags.Id] as TaxonomyFieldValueCollection;
foreach (TaxonomyFieldValue item in keywordTagsValues)
{
if (seoKeywordsValues.IndexOf(item.Label) == -1)
seoKeywordsValues.Add(item.Label);
}
newPage[seoKeywords.Id] = string.Join(",", seoKeywordsValues.ToArray());
newPage.SystemUpdate();