/// <summary> /// Разбор записи. /// </summary> public static MagazineInfo Parse ( IrbisRecord record ) { if (ReferenceEquals(record, null)) { throw new ArgumentNullException("record"); } MagazineInfo result = new MagazineInfo { Index = record.FM("903"), Title = record.FM("200", 'a'), SubTitle = record.FM("200", 'e'), Cumulation = MagazineCumulation.Parse(record), SeriesNumber = record.FM("923", 'h'), SeriesTitle = record.FM("923", 'i'), Mfn = record.Mfn }; if (string.IsNullOrEmpty(result.Title) || string.IsNullOrEmpty(result.Index) //|| string.IsNullOrEmpty(result.MagazineKind) //|| string.IsNullOrEmpty(result.MagazineType) ) { return(null); } return(result); }
/// <summary> /// Разбор поля. /// </summary> public static MagazineCumulation Parse ( RecordField field ) { if (ReferenceEquals(field, null)) { throw new ArgumentNullException("field"); } MagazineCumulation result = new MagazineCumulation { Year = field.GetFirstSubFieldText('q'), Volume = field.GetFirstSubFieldText('f'), Place = field.GetFirstSubFieldText('d'), Numbers = field.GetFirstSubFieldText('h'), Complect = field.GetFirstSubFieldText('k') }; return(result); }