private void AddLookupMembers(AtomModel data) { if (data.AdditionalInfo == null) { data.AdditionalInfo = new AtomAdditionalInfo(); } if (data.Members == null) { data.Members = new OrderedAtomMembers(); } var idMember = new AtomMemberInfo() { Name = data.Name + "Id", Type = data.Lookup.Type ?? "long" }; var id = idMember.Generated().Key(); var name = new AtomMemberInfo { Name = data.Name + "Name", Key = true }.Generated(); var description = new AtomMemberInfo { Name = data.Name + "Description" }.Generated(); var defaultLookupSettings = new AtomAdditionalInfo { Temporal = { HasTemporal = true }, HideId = false, AutoGenId = false, QueryTypes = new List <QueryFlags> { QueryFlags.None } }; defaultLookupSettings.Merge(_defaults); data.AdditionalInfo.Merge(defaultLookupSettings); data.Members.Insert(0, id); data.Members.Insert(1, name); data.Members.Insert(2, description); }
internal static AtomModel FromString(string atomString, AtomDefaults defaults = null) { return(JsonConvert.DeserializeObject <AtomModel>(atomString, new AtomRootConverter(defaults?.AdditionalInfo ?? AtomAdditionalInfo.Default()))); }
public AtomRootConverter(AtomAdditionalInfo defaults) { _defaults = defaults; }
public AtomDefaults() { Roles = new List<DatabaseRole>(); AdditionalInfo = new AtomAdditionalInfo(); }