protected void btnSave_Click(object sender, EventArgs e) { try { ListMetadataContentType contentType = this.ContentType; foreach (GridViewRow gvRow in listColumnsGrid.Rows) { Guid fldId = new Guid(listColumnsGrid.DataKeys[gvRow.RowIndex].Value.ToString()); var fld = contentType.ListMetadataFieldContentTypes.FirstOrDefault(f => f.Id == fldId); if (fld != null) { fld.ItemPosition = Int32.Parse(((System.Web.UI.WebControls.DropDownList)gvRow.FindControl("ddlColumnPosition")).SelectedValue); } } new RosterConfigService().SaveContentType(contentType); // close form Utils.GoBackOnSuccess(this, Context); } catch (Exception ex) { panelError.Controls.Add(new Label { Text = ex.Message, ForeColor = System.Drawing.Color.Red }); } }
protected void btnSave_Click(object sender, EventArgs e) { try { string newContentTypeName = txtContentTypeName.Text; if (this.List.ListMetadataContentTypes.Any(ct => ct.Name.ToLower().Equals(newContentTypeName.ToLower()))) { throw new Exception("Content type with name '" + newContentTypeName + "' already exists!"); } ListMetadataContentType newContentType = configProvider.CreateContentType(this.List.Id); newContentType.Name = newContentTypeName; newContentType.IsDefault = false; newContentType.IsOnNewAction = true; newContentType.DispItemUrl += "&ContentTypeId=" + newContentType.Id; newContentType.EditItemUrl += "&ContentTypeId=" + newContentType.Id; newContentType.NewItemUrl += "&ContentTypeId=" + newContentType.Id; newContentType.ListMetadataFieldContentTypes.Add(new ListMetadataFieldContentType { Id = Guid.NewGuid(), ContentTypeId = newContentType.Id, ListMetadataFieldId = this.List.ListMetadataFields.FirstOrDefault(f => f.InternalName == Common.FieldNames.CONTENT_TYPE_ID).Id }); // save configProvider.SaveContentType(newContentType); // close form Utils.GoBackOnSuccess(this, this.Context); } catch (Exception ex) { errorHolder.Controls.Add(new Label() { Text = ex.Message, ForeColor = System.Drawing.Color.Red }); } }