Example #1
0
 public IField AddFieldAsXml(string schemaXml, bool addToDefaultView = false, AddFieldOptionsFlags options = AddFieldOptionsFlags.DefaultValue)
 {
     return(AddFieldAsXmlAsync(schemaXml, addToDefaultView, options).GetAwaiter().GetResult());
 }
Example #2
0
        public async Task <IField> AddFieldAsXmlAsync(string schemaXml, bool addToDefaultView = false, AddFieldOptionsFlags options = AddFieldOptionsFlags.DefaultValue)
        {
            // Ensure the AddFieldToDefaultView is in our set of field add flags
            if (addToDefaultView)
            {
                options |= AddFieldOptionsFlags.AddFieldToDefaultView;
            }

            var newField = CreateNewAndAdd() as Field;
            await newField.AddAsXmlAsync(schemaXml, options).ConfigureAwait(false);

            return(newField);
        }
Example #3
0
 public async Task <IField> AddFieldAsXmlBatchAsync(string schemaXml, bool addToDefaultView = false, AddFieldOptionsFlags options = AddFieldOptionsFlags.DefaultValue)
 {
     return(await AddFieldAsXmlBatchAsync(PnPContext.CurrentBatch, schemaXml, addToDefaultView, options).ConfigureAwait(false));
 }
Example #4
0
        public async Task <IField> AddFieldAsXmlBatchAsync(Batch batch, string schemaXml, bool addToDefaultView = false, AddFieldOptionsFlags options = AddFieldOptionsFlags.DefaultValue)
        {
            if (addToDefaultView)
            {
                options |= AddFieldOptionsFlags.AddFieldToDefaultView;
            }

            var newField = CreateNewAndAdd() as Field;
            await newField.AddAsXmlBatchAsync(batch, schemaXml, options).ConfigureAwait(false);

            return(newField);
        }
        /// <summary>
        /// Imports settings from the <see cref="CommonFieldOptions"/> configuration into the generic <see cref="FieldCreationOptions"/> model
        /// </summary>
        /// <param name="common">Set of field creation options to transform</param>
        /// <param name="title">Field title</param>
        internal void ImportFromCommonFieldOptions(string title, CommonFieldOptions common)
        {
            if (string.IsNullOrEmpty(title))
            {
                throw new ArgumentNullException(nameof(title));
            }

            if (common != null && common.Id.HasValue)
            {
                Id = common.Id.Value;
            }
            else
            {
                Id = Guid.NewGuid();
            }

            DisplayName  = title;
            InternalName = title;

            if (common == null)
            {
                return;
            }

            AddToDefaultView = common.AddToDefaultView;
            Options          = common.Options;

            if (common.Required.HasValue)
            {
                Required = common.Required.Value;
            }

            if (!string.IsNullOrEmpty(common.Group))
            {
                Group = common.Group;
            }

            if (!string.IsNullOrEmpty(common.Description))
            {
                SetAttribute("Description", common.Description);
            }

            if (common.EnforceUniqueValues.HasValue)
            {
                SetAttribute("EnforceUniqueValues", common.EnforceUniqueValues.Value.ToString().ToUpper());
            }

            if (common.Hidden.HasValue)
            {
                SetAttribute("Hidden", common.Hidden.Value.ToString().ToUpper());
            }

            if (common.Indexed.HasValue)
            {
                SetAttribute("Indexed", common.Indexed.Value.ToString().ToUpper());
            }

            if (!string.IsNullOrEmpty(common.DefaultFormula))
            {
                SetChildXmlNode("DefaultFormula", $"<DefaultFormula>{CsomHelper.XmlString(common.DefaultFormula)}</DefaultFormula>");
            }

            if (!string.IsNullOrEmpty(common.ValidationFormula) && !string.IsNullOrEmpty(common.ValidationMessage))
            {
                SetChildXmlNode("Validation", $"<Validation Message=\"{CsomHelper.XmlString(common.ValidationMessage, true)}\">{CsomHelper.XmlString(common.ValidationFormula)}</Validation>");
            }

            if (common.ShowInEditForm.HasValue)
            {
                SetAttribute("ShowInEditForm", common.ShowInEditForm.Value.ToString().ToUpper());
            }

            if (common.ShowInViewForms.HasValue)
            {
                SetAttribute("ShowInViewForms", common.ShowInViewForms.Value.ToString().ToUpper());
            }

            if (common.ShowInNewForm.HasValue)
            {
                SetAttribute("ShowInNewForm", common.ShowInNewForm.Value.ToString().ToUpper());
            }

            if (!string.IsNullOrEmpty(common.CustomFormatter))
            {
                SetAttribute("CustomFormatter", common.CustomFormatter);
            }
        }