Advertisement
Suchiman

Untitled

Aug 6th, 2014
203
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 1.98 KB | None | 0 0
  1. LINQ
  2. return databaseMapping.EntityContainerMappings
  3.                         .SelectMany(ecm => ecm.EntitySetMappings)
  4.                         .SelectMany(esm => esm.EntityTypeMappings)
  5.                         .Where(etm => etm.MappingFragments.Any(tmf => tmf.Table == toTable))
  6.                         .Select(etm => etm.EntityType);
  7.  
  8. VS this
  9.  
  10. // PERF: this code written this way since it's part of a hotpath, consider its performance when refactoring. See codeplex #2298.  
  11. var types = new List<EntityType>();
  12. var entityContainerMappings = databaseMapping.EntityContainerMappings;
  13. // ReSharper disable ForCanBeConvertedToForeach  
  14. for (var entityContainerMappingsIterator = 0;
  15.     entityContainerMappingsIterator < entityContainerMappings.Count;
  16.     ++entityContainerMappingsIterator)
  17. {
  18.     var entitySetMappings = entityContainerMappings[entityContainerMappingsIterator].EntitySetMappings.ToList();
  19.     for (var entitySetMappingsIterator = 0;
  20.         entitySetMappingsIterator < entitySetMappings.Count;
  21.         ++entitySetMappingsIterator)
  22.     {
  23.         var entityTypeMappings = entitySetMappings[entitySetMappingsIterator].EntityTypeMappings;
  24.         for (var entityTypeMappingsIterator = 0;
  25.             entityTypeMappingsIterator < entityTypeMappings.Count;
  26.             ++entityTypeMappingsIterator)
  27.         {
  28.             var entityTypeMapping = entityTypeMappings[entityTypeMappingsIterator];
  29.             // ReSharper disable once LoopCanBeConvertedToQuery  
  30.             for (var mappingFragmentsIterator = 0;
  31.                 mappingFragmentsIterator < entityTypeMapping.MappingFragments.Count;
  32.                 ++mappingFragmentsIterator)
  33.             {
  34.                 if (entityTypeMapping.MappingFragments[mappingFragmentsIterator].Table == toTable)
  35.                 {
  36.                     types.Add(entityTypeMapping.EntityType);
  37.                     break;
  38.                 }
  39.             }
  40.         }
  41.     }
  42. }
  43. // ReSharper restore ForCanBeConvertedToForeach  
  44. return types;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement