public DataAttribute storeDomainConstraint(DomainConstraintModel constraintModel)
{
DataContainerManager dcManager = new DataContainerManager();
DataAttribute dataAttribute = dcManager.DataAttributeRepo.Get(constraintModel.AttributeId);
List<DomainItem> items = new List<DomainItem>();
if (constraintModel.Terms != null && constraintModel.Terms.Trim() != "")
items = createDomainItems(constraintModel.Terms.Trim());
if (items.Count > 0)
{
if (constraintModel.Id == 0)
{
DomainConstraint constraint = new DomainConstraint(ConstraintProviderSource.Internal, "", AppConfiguration.Culture.Name, constraintModel.Description, constraintModel.Negated, null, null, null, items);
dcManager.AddConstraint(constraint, dataAttribute);
}
else
{
DomainConstraint temp = new DomainConstraint();
for (int i = 0; i < dataAttribute.Constraints.Count; i++)
{
if (dataAttribute.Constraints.ElementAt(i).Id == constraintModel.Id)
{
temp = (DomainConstraint)dataAttribute.Constraints.ElementAt(i);
temp.Materialize();
temp.Description = constraintModel.Description;
temp.Negated = constraintModel.Negated;
temp.Items = items;
dcManager.AddConstraint(temp, dataAttribute);
break;
}
}
}
}
return dataAttribute;
}