/// <summary> /// Initializes a new instance of the <see cref="ValidationMessage"/> class. /// </summary> /// <param name="validationLevel"> /// The validation level (Error, Warning). /// </param> /// <param name="messageText"> /// Validation message text. /// </param> /// <param name="validationMessageKind"> /// The validation message kind which indicates what kind of validation /// has been performed (property or entity based). /// </param> public ValidationMessage(ValidationLevel validationLevel, string messageText, ValidationMessageKind validationMessageKind) { this.ValidationLevel = validationLevel; this.MessageText = messageText; this.ValidationMessageKind = validationMessageKind; this.ShowMessageOnProperty = true; this.ShowMessageInSummary = true; }
/// <summary> /// Initializes a new instance of the <see cref="ValidationMessage"/> class using an existing validation message. /// </summary> /// <param name="message"> /// Existing validation message, whose properties should be taken. /// </param> /// <param name="validationMessageKind"> /// The validation message kind which indicates what kind of validation has been performed (property or entity based). /// If no value is provided, <c>message.ValidationMessageKind</c> will be taken. /// </param> public ValidationMessage(ValidationMessage message, ValidationMessageKind? validationMessageKind = null) : this(message.ValidationLevel, message.MessageText, message.ShowMessageOnProperty, message.ShowMessageInSummary, validationMessageKind ?? message.ValidationMessageKind) { }
/// <summary> /// Initializes a new instance of the <see cref="ValidationMessage"/> class. /// </summary> /// <param name="validationLevel"> /// The validation level (Error, Warning). /// </param> /// <param name="messageText"> /// Validation message text. /// </param> /// <param name="showMessageOnProperty"> /// Indicates whether the validation message will be shown on the property at the UI. /// </param> /// <param name="showMessageInSummary"> /// Indicates whether the validation message will be shown in the validation summary at the UI. /// </param> /// <param name="validationMessageKind"> /// The validation message kind which indicates what kind of validation /// has been performed (property or entity based). /// </param> public ValidationMessage( ValidationLevel validationLevel, string messageText, bool showMessageOnProperty = true, bool showMessageInSummary = true, ValidationMessageKind? validationMessageKind = null) { this.ValidationLevel = validationLevel; this.MessageText = messageText; this.ShowMessageOnProperty = showMessageOnProperty; this.ShowMessageInSummary = showMessageInSummary; this.ValidationMessageKind = validationMessageKind; }
/// <summary> /// Adds validation message for a property to a certain dictionary. /// </summary> /// <param name="dictionary">The dictionary, where the message should be added.</param> /// <param name="propertyName">The property name.</param> /// <param name="message">The validation message to add.</param> /// <param name="messageKind">The validation message kind (property, entity).</param> private void AddPropertyValidationMessage( Dictionary<string, List<ValidationMessage>> dictionary, string propertyName, ValidationMessage message, ValidationMessageKind messageKind) { Guard.AssertNotNull(dictionary, "dictionary"); Guard.AssertNotNull(message, "message"); // if the property is already in the dictionary, just add the new message; else, add a new key/value pair if (dictionary.ContainsKey(propertyName)) { dictionary[propertyName].Add(new ValidationMessage(message, messageKind)); } else { dictionary.Add(propertyName, new List<ValidationMessage> { new ValidationMessage(message, messageKind) }); } }