How do you add or modify fields in content types which you deployed as a solution.
After I have deployed a solution which contains my Content Types there is a strong possibility that, in time, your users will request field changes and even additional fields. So what do you do? You could make your changes to your feature, retract and redeploy this solution but I find this troublesome.
My approach is to update the feature to keep things up-to-date but then just make the required changes to the live site using API through a console app.
Here is an example for modifying an existing field and also adding a new field
Modifying an existing field
Modifying a site column fields is straight forward enough but there is a property to watch out for – SPField.PushChangesToList which will ensure your changes filter down to the lists which use this field.
Adding a new site column field
In this example I add a new site column field to the root site, then locate the appropriate list in which this is being used and add it there too. I then get the default view for the list and add the field to that too..
I’d love to hear your approaches to change control. Leave a comment or drop me an email.