Newtonsoft. Json объект сериализации вызовет исключение FileNotFoundException, если объект содержит атрибут настройки. - PullRequest
0 голосов
/ 09 июля 2020
[CSVTable]
  public class Course {
    [CSVColumn("Course")]
    public string CourseName { get; set; }
    [CSVColumn("Name")]
    public string Teacher { get; set; }
    [CSVColumn("Date")]
    public DateTime CreatedTime { get; set; }
  }

JsonConvert.SerializeObject(new Course() { CourseName = "Course", Teacher = "One", CreatedTime = DateTime.Now });

выбросить исключение FileNotFoundException о dll «System.Runtime, Version = 4.2.2.0, Culture = нейтральный, PublicKeyToken = b03f5f7f11d50a3a», не загруженном в методе «JsonConvert.SerializeObject»

о CSVTable и CSVColumn:

 [AttributeUsage(AttributeTargets.Property | AttributeTargets.Field, AllowMultiple = true, Inherited = false)]
  public class CSVColumnAttribute : Attribute, IComparable<CSVColumnAttribute> {
    public string HeaderText { get; set; }
    public int Order { get; set; }
    public string TableName { get; set; } = "default";
    public CSVColumnAttribute(string Header) { HeaderText = Header; }

    public int CompareTo([AllowNull] CSVColumnAttribute other) {
      return other == null ? 0 : Order.CompareTo(other.Order);
    }
  }
  [AttributeUsage(AttributeTargets.Class | AttributeTargets.Struct, AllowMultiple = true, Inherited = false)]
  public class CSVTableAttribute : Attribute {
    public string Name { get; set; } = "default";
    public char JoinChar { get; set; } = ',';
  }

1 Ответ

0 голосов
/ 17 июля 2020

Атрибуты, определенные в. net основном проекте, и относящиеся к ним в. net каркасном проекте. Просто определите новый класс для Newtonsoft.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...