Event itemupdating which
section to the field and hardcode the various Id’s that define a term set (required if you are using a sandboxed solution), or configure these in code.I’m taking the code approach here as it is the only way to ensure the field will work across multiple environments.I find the easiest way to ensure all the columns are added to the list definition is to add them to a content type first.This content type should contain the managed metadata/taxonomy field, the note field and the Tax Catch All and Tax Catch All Label fields as shown below.This is another step that isn’t always mentioned but if this feature is not present then you are presented with a greyed out metadata selection when adding or editing items (note this also happens if the field is not connected to a term set).
With this information we can use the following steps to deploy managed metadata fields that avoid these issues.
I’ve also created an example project that I’ve included at the end of the article if you want to see this working for yourself.
Create a managed metadata field The first step is to create a site column using the Field element with a Type of either Taxonomy Field Type (allowing a single selection) or Type Taxonomy Field Type Multi (allowing multiple selections if you also set Mult=”True”).
At least in my testing when we create a list definition this isn’t all wired up correctly and the following steps were required.
This and the following step is often missed out in other articles but cause problems if you try to create custom list definitions that include the managed metadata column. The problem stems from the fact that Share Point is looking for an associated note (i.e.