using System.Collections.Generic; using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations.Schema; using Newtonsoft.Json; namespace AyaNova.Models { //NOTE: Any non required field (nullable in DB) sb nullable here, i.e. decimal? not decimal, //otherwise the server will call it an invalid record if the field isn't sent from client public class PM : ICoreBizObjectModel { public long Id { get; set; } public uint Concurrency { get; set; } [Required] public long Serial { get; set; } public bool Active { get; set; } public string Notes { get; set; } public string Wiki { get; set; } public string CustomFields { get; set; } public List Tags { get; set; } //dependents public List PMItems { get; set; } public PM() { Tags = new List(); PMItems = new List(); } //Not persisted business properties //NOTE: this could be a common class applied to everything for common biz rule stuff //i.e. specific rights in situations based on rules, like candelete, canedit etc [NotMapped] public bool NonDataBaseExampleColumn { get; set; }//example of how to add a property that is not persisted but is used by both ends dynamically, should come up with a naming scheme so can see them at a glance }//eoc }//eons