internal void UpdateFromJNode(JNode jNode) { var shortName = jNode.Get <String>("shortName"); var ns = jNode.Get <String>("namespace"); var name = TypeNameInfo.QualifyTypeName(shortName, ns); var et = MetadataStore.Instance.GetEntityType(name); Check(et.BaseEntityTypeName, jNode.Get <String>("baseTypeName"), "BaseEntityType"); // For now this doesn't need to match et.IsAbstract = jNode.Get <bool>("isAbstract"); et.AutoGeneratedKeyType = jNode.GetEnum <AutoGeneratedKeyType>("autoGeneratedKeyType"); var drn = jNode.Get <String>("defaultResourceName"); if (drn != null) { MetadataStore.Instance.SetResourceName(drn, et, true); } jNode.GetJNodeArray("dataProperties").ForEach(jn => { var dpName = jn.Get <String>("name"); var dp = et.GetDataProperty(dpName); dp.UpdateFromJNode(jn); }); jNode.GetJNodeArray("navigationProperties").ForEach(jn => { var npName = jn.Get <String>("name"); var np = et.GetNavigationProperty(npName); np.UpdateFromJNode(jn); }); et._validators = new ValidatorCollection(jNode.GetJNodeArray("validators")); // custom }
public void UpdateFromJNode(JNode jNode) { var shortName = jNode.Get <String>("shortName"); var ns = jNode.Get <String>("namespace"); Name = TypeNameInfo.QualifyTypeName(shortName, ns); // BaseTypeName = jnode.Get<String>("baseTypeName"); // IsAbstract = jnode.Get<bool>("isAbstract"); jNode.GetJNodeArray("dataProperties").ForEach(jn => { var dpName = jn.Get <String>("name"); var dp = this.GetDataProperty(dpName); dp.UpdateFromJNode(jn); }); // validators // custom }
private void UpdateStructuralTypeFromJNode(JNode jNode) { var shortName = jNode.Get <String>("shortName"); var ns = jNode.Get <String>("namespace"); var name = TypeNameInfo.QualifyTypeName(shortName, ns); var isComplexType = jNode.Get <bool>("isComplexType", false); if (isComplexType) { var ct = MetadataStore.Instance.GetComplexType(name); ct.UpdateFromJNode(jNode); } else { var et = MetadataStore.Instance.GetEntityType(name); et.UpdateFromJNode(jNode); } }