I'm trying to set a taxonomy field to a specific value. The code below works but does not save the change. I know it works because if I force the change via the Update method, the user sees an error message about a save conflict but the value *is* changed in the list.
Dim fld As TaxonomyField = DirectCast(properties.ListItem.Fields("Product"), TaxonomyField)
Dim taxo As New TaxonomySession(web.Site)
Dim t As Term = taxo.DefaultSiteCollectionTermStore.GetTermSet(fld.TermSetId).GetTerm(New Guid(g))
properties.ListItem.Update() '<< Works only if Update is called
Is there some other method that has to get called to save such a change? I tried fld.Update() with no effect.
The other non-taxo fields being updated in this event receiver work just fine.