//==========================================================================================================================================================CREATE================================================================== /// <summary> /// Creates new records in db for avilable values in selection. /// </summary> /// <param name="availableValues">Enumeration of available values.</param> /// <param name="property">Entity of selectable property.</param> internal static bool AddAvailableValues(IEnumerable<string> availableValues, Property property) { ProjectPropertiesEntities db = new ProjectPropertiesEntities(); if (db.Connection.State != System.Data.ConnectionState.Open) { db.Connection.Open(); } try { foreach (String availableValue in availableValues) { db.AddToAvailableValues(new AvailableValue { Value = availableValue, Property = property.SystemName }); } db.SaveChanges(); return true; } catch (Exception e) { return false; } finally { } }
/// <summary> /// Sets available values for specified property instead of existing. /// </summary> /// <param name="availablevalues"></param> /// <param name="property"></param> /// <exception cref="ConnectionException" /> internal static void SetAvailableValues(IEnumerable<String> availablevalues, Property property) { ProjectPropertiesEntities db = new ProjectPropertiesEntities(); if (db.Connection.State != System.Data.ConnectionState.Open) { db.Connection.Open(); } try { foreach (AvailableValue value in property.AvailableValues) { DeleteWithoutSubmitting(value, db); } foreach (String value in availablevalues) { AvailableValue availableValue = AvailableValue.CreateAvailableValue(property.SystemName); db.AddToAvailableValues(availableValue); } db.SaveChanges(); } catch (Exception e) { throw new ConnectionException(e); } finally { } }