public DataTable DataManagementPlanToDataTable(DataManagementPlan dmp, IList<ProjectParty> projectParties, string listSeparator = ListSeparator) { var dataTable = new DataTable(); dataTable.AddDmpColumns(dmp); var dataRow = dataTable.NewRow(); dataRow.AddDmpValues(dmp, projectParties, listSeparator); dataTable.Rows.Add(dataRow); return dataTable; }
internal static void AddDmpValues(this DataRow dataRow, DataManagementPlan dmp, IList<ProjectParty> projectParties, string listSeparator) { dataRow.AddValues(listSeparator, false, dmp.DataStorage, dmp.NewDataDetail, dmp.ExistingDataDetail, dmp.DataDocumentation, dmp.Ethic, dmp.Confidentiality, dmp.BackupPolicy, dmp.DataRetention, dmp.DataSharing, dmp.DataRelationshipDetail); dataRow[CreationDateColumn] = dmp.CreationDate; dataRow[ProjectAccessRolesColumn] = ((IList)projectParties).ToStringValue(listSeparator); }
internal static void AddDmpColumns(this DataTable dataTable, DataManagementPlan dmp) { dataTable.AddColumns(false, typeof(DataStorage), typeof(NewDataDetail), typeof(ExistingDataDetail), typeof(DataDocumentation), typeof(Ethic), typeof(Confidentiality), typeof(BackupPolicy), typeof(DataRetention), typeof(DataSharing), typeof(DataRelationshipDetail), typeof(DataOrganisation)); dataTable.Columns.Add(CreationDateColumn, typeof(DateTime)); dataTable.Columns.Add(ProjectAccessRolesColumn, typeof(string)); }