public bool ValidateBibTeXRequiredField(IBibTeXEntry entry, PropertyInfo property) { var entryName = _attributeReader.GetBibTeXEntryName(entry); var fieldName = _attributeReader.GetBibTeXFieldName(property); var fieldValue = property.GetValue(entry); if (IsBibTeXFieldValueNone(fieldValue)) { throw new RequiredFieldException(entryName, fieldName); } return(true); }
public void SerializeBibTeXEntry(StringBuilder stringBuilder, IBibTeXEntry entry) { var entryName = _attributeReader.GetBibTeXEntryName(entry); var fields = _attributeReader.GetBibTeXFieldsWithValues(entry); stringBuilder.Append(BibTeXBeginEntryCharacter); stringBuilder.Append(entryName); stringBuilder.Append(BibTeXBeginFieldsCharacter); stringBuilder.Append(entry.CitationKey); SerializeBibTeXFields(stringBuilder, fields); if (FormatStyle == BibTeXFormatStyle.Readable) { stringBuilder.Append("\n"); } stringBuilder.Append(BibTeXEndFieldsCharacter); stringBuilder.Append("\n"); }