Example #1
0
        /// <summary>
        /// Ищет во входной строке все @Img(Images.Id)
        /// </summary>
        /// <returns>
        /// Возвращает коллекцию объектов Images, найденных при поиске.
        /// Если соответствующие объекты не найдены, метод возвращает пустой объект коллекции.
        /// </returns>
        public static List<Images> Matches(string input)
        {
            List<Images> images = new List<Images>();
            if (input == null) return images;

            ApplicationDbContext db = new ApplicationDbContext();

            foreach (Match match in Regex.Matches(input, @"(\x40)Img(\x28)(?<image>(\d)+)(\x29)")) {
                int imageId = Convert.ToInt32(Regex.Match(match.Value, @"(\d)+").Value);
                if (db.Images.Find(imageId) == null) {
                    continue;
                } else {
                    images.Add(db.Images.Find(imageId));
                }
            }

            db.Dispose();
            return images;
        }