Exemplo n.º 1
0
        public static void SetDates(TagLib.Id3v2.Tag tag, IList<Tuple<DateTime, DateGranularity>> tuples)
        {
            if (tuples == null)
                throw new ArgumentNullException("tuples");

            string[] formattedDates = new string[tuples.Count];
            for (int index = 0; index < tuples.Count; index++)
            {
                switch (tuples[index].Item2)
                {
                    case DateGranularity.Year:
                        formattedDates[index] = tuples[index].Item1.ToString("yyyy", CultureInfo.InvariantCulture);
                        break;
                    case DateGranularity.Month:
                        formattedDates[index] = tuples[index].Item1.ToString("yyyy-MM", CultureInfo.InvariantCulture);
                        break;
                    case DateGranularity.Day:
                        formattedDates[index] = tuples[index].Item1.ToString("yyyy-MM-dd", CultureInfo.InvariantCulture);
                        break;
                    case DateGranularity.Hour:
                        formattedDates[index] = tuples[index].Item1.ToString("yyyy-MM-ddTHH", CultureInfo.InvariantCulture);
                        break;
                    case DateGranularity.Minute:
                        formattedDates[index] = tuples[index].Item1.ToString("yyyy-MM-ddTHH:mm", CultureInfo.InvariantCulture);
                        break;
                    case DateGranularity.Second:
                        formattedDates[index] = tuples[index].Item1.ToString("yyyy-MM-ddTHH:mm:ss", CultureInfo.InvariantCulture);
                        break;
                }
            }

            tag.SetTextFrame("TDRC", formattedDates);
        }