public static AssemblyDTG AssemblyDtg(AssemblyDb assemblyModel) { TypeDtgDictionary = new Dictionary <string, TypeDTG>(); return(new AssemblyDTG() { Name = assemblyModel.Name, MetadataName = assemblyModel.MetadataName, Namespaces = assemblyModel.SerializableNamespaces?.Select(NamespaceDtg).ToList() }); }
public void Serialize(AssemblyDTG assembly) { Database.SetInitializer(new DropCreateDatabaseAlways <AssemblyContext>()); using (AssemblyContext context = new AssemblyContext()) { AssemblyDb assemblyToSave = new AssemblyDb(assembly); context.Assemblies.Add(assemblyToSave); context.SaveChanges(); } }
public void Save(AssemblyDto model) { context.Assemblies.RemoveRange(context.Assemblies); context.Fields.RemoveRange(context.Fields); context.Methods.RemoveRange(context.Methods); context.Namespaces.RemoveRange(context.Namespaces); context.Properties.RemoveRange(context.Properties); context.Types.RemoveRange(context.Types); AssemblyDb assemblyDb = Mapper.Map <AssemblyDb>(model); context.Assemblies.Add(assemblyDb); context.SaveChanges(); }
public AssemblyDto Load() { context.Namespaces .Include(x => x.Namespaces) .Include(x => x.Types) .Load(); context.Assemblies .Include(x => x.Namespaces) .Load(); context.Fields .Include(x => x.Attributes) .Include(x => x.TypeModel) .Load(); context.Methods .Include(x => x.Attributes) .Include(x => x.GenericArguments) .Include(x => x.Parameters) .Include(x => x.ReturnType) .Load(); context.Properties .Include(x => x.Attributes) .Include(x => x.Getter) .Include(x => x.Setter) .Include(x => x.Type) .Load(); context.Types .Include(x => x.Attributes) .Include(x => x.BaseType) .Include(x => x.Constructors) .Include(x => x.DeclaringType) .Include(x => x.Fields) .Include(x => x.GenericArguments) .Include(x => x.ImplementedInterfaces) .Include(x => x.Methods) .Include(x => x.FieldType) .Include(x => x.NestedTypes) .Load(); AssemblyDb ret = context.Assemblies.FirstOrDefault(); return(Mapper.Map <AssemblyDto>(ret)); }
public AssemblyDTG Deserialize() { using (AssemblyContext context = new AssemblyContext()) { context.Namespaces.Load(); context.Types.Load(); context.Methods.Load(); context.Parameters.Load(); context.Properties.Load(); AssemblyDb assemblyFromDatabase = context.Assemblies.First(); if (assemblyFromDatabase == null) { return(null); } return(MapperDb.AssemblyDtg(assemblyFromDatabase)); } }