private static void BuildSlicedMetadataCache() { SlicedEntityMetadataCache.Clear(); foreach (var app in _applicationMetadata) { var entityName = app.Entity; var entityMetadata = Entity(entityName); if (app.IsMobileSupported()) { app.Schemas().Add(ApplicationMetadataSchemaKey.GetSyncInstance(), ApplicationSchemaFactory.GetSyncInstance(app.ApplicationName, app.IdFieldName)); } foreach (var webSchema in app.Schemas()) { var schema = webSchema.Value; schema.DepandantFields(DependencyBuilder.BuildDependantFields(schema.Fields, schema.DependableFields)); schema._fieldWhichHaveDeps = schema.DependantFields.Keys; var instance = SlicedEntityMetadataBuilder.GetInstance(entityMetadata, schema, app.FetchLimit); SlicedEntityMetadataCache[new SlicedEntityMetadataKey(webSchema.Key, entityName)] = instance; } } }