private static StadRegistry MakeRegistry(TypeCollectorResult result) { AnalyzeContext context = new AnalyzeContext(result); List <DataSetModel> dataSetModels = new List <DataSetModel>(); foreach (ObjectSerializationInfo info in result.CollectedObjectInfo) { if (info.Attributes.IsDefaultOrEmpty == true) { continue; } var dataSetDefinitionAttribute = info.Attributes.FirstOrDefault(a => a.Type.Contains(nameof(Stad.Annotation.DataSetDefinition))); if (dataSetDefinitionAttribute != null) { var dataSetModel = MakeDataSetModel(context, info); if (dataSetModel != null) { dataSetModels.Add(dataSetModel); } } } return(StadRegistry.Create(new ReadOnlyCollection <DataSetModel>(dataSetModels))); }
private static ObjectSerializationInfo GetObjectInfo(TypeCollectorResult collectorResult, string type) { var memberObjectInfo = collectorResult.CollectedObjectInfo.FirstOrDefault(i => i.FullName == type); if (memberObjectInfo == null) { memberObjectInfo = collectorResult.CollectedClosedTypeGenericInfo.FirstOrDefault(i => i.FullName == type); } return(memberObjectInfo); }
public AnalyzeContext(TypeCollectorResult collectResult) { CollectResult = collectResult; }