public IEnumerable <ValidationResult> Validate(ValidationContext validationContext) { if (ImageUrl.Contains("https")) { yield return(ValidationResult.Success); } else { yield return(new ValidationResult("Image URL must start with https!", new[] { nameof(ImageUrl) })); } }
public UpdateViewModel(Update update) { if (update == null) { return; } ImageUrl = update.Actor?.ImageUrl; UserName = update.Actor?.Name; ActionText = update.ActionText.Contains("<") ? HtmlUtilities.ConvertToText(Regex.Replace(update.ActionText, "<.*?>", string.Empty)) : HtmlUtilities.ConvertToText(update.ActionText); DateTime date; if (DateTime.TryParse(update.UpdatedAt, out date)) { UpdatedAt = date.ToString("dd MMM yyyy"); // "ddd, dd MMM yyyy HH:mm:ss" } if (String.IsNullOrEmpty(update.Actor.Id) && !String.IsNullOrEmpty(ImageUrl) && !ImageUrl.Contains("nophoto")) { UserId = System.IO.Path.GetFileNameWithoutExtension(ImageUrl); } else { UserId = update.Actor.Id; } if (update.Type.Equals("review") && update.Object?.Book != null) { SetUpBookData(update.Object.Book); } else if (update.Type.Equals("readstatus") && update.Object?.ReadStatus?.Review?.Book != null) { SetUpBookData(update.Object.ReadStatus.Review.Book); } else { IsBook = false; } if (update.Object?.ReadStatus != null) { _resourceId = update.Object.ReadStatus.Id; _resourceType = "ReadStatus"; } if (update.Object?.UserStatus != null) { _resourceId = update.Object.UserStatus.Id; _resourceType = "UserStatus"; } }