/// <summary>
        /// Saves the field.
        /// </summary>
        /// <param name="sectionItem">The section item.</param>
        /// <param name="field">The field.</param>
        private static void SaveField(TemplateSectionItem sectionItem,
                                      FieldDefinition field)
        {
            Assert.ArgumentNotNull((object)sectionItem, "sectionItem");
            Assert.ArgumentNotNull((object)field, "field");
            TemplateFieldItem templateFieldItem = (TemplateFieldItem)null;
            if (!string.IsNullOrEmpty(field.FieldID))
                templateFieldItem = sectionItem.GetField(ID.Parse(field.FieldID));
            if (field.Deleted == "1")
            {
                if (templateFieldItem == null)
                    return;
                templateFieldItem.InnerItem.Recycle();
            }
            else
            {
                if (templateFieldItem == null)
                {
                    templateFieldItem = sectionItem.AddField(field.Name);
                    field.FieldID = templateFieldItem.ID.ToString();
                }

                templateFieldItem.InnerItem.Editing.BeginEdit();
                templateFieldItem.InnerItem.Name = StringUtil.GetString(new[] { field.Name });
                templateFieldItem.Type = StringUtil.GetString(new[] { field.Type });
                templateFieldItem.Source = StringUtil.GetString(new[] { field.Source });
                templateFieldItem.Title = StringUtil.GetString(new[] { field.Title });
                templateFieldItem.InnerItem["__Short description"] =
                    StringUtil.GetString(new[] { field.Description });
                templateFieldItem.InnerItem[TemplateFieldIDs.Unversioned] =
                    StringUtil.GetString(new[] { field.IsUnversioned }) == "1" ? "1" : string.Empty;
                templateFieldItem.InnerItem[TemplateFieldIDs.Shared] =
                    StringUtil.GetString(new[] { field.IsShared }) == "1" ? "1" : string.Empty;
                templateFieldItem.InnerItem.Appearance.Sortorder = MainUtil.GetInt(field.Sortorder, 0);
                templateFieldItem.InnerItem.Editing.EndEdit();
            }
        }