It is recommended to use the NDepend interactive UI capabilities
to make the most of NDepend by mastering all aspects of your code.
Diagrams
Application Metrics
Note: Further Application Statistics are available.
|
Rules summary
487615This section lists all Rules violated, and Rules or Queries with Error- Number of Rules or Queries with Error (syntax error, exception thrown, time-out): 7
- Number of Rules violated: 84
Summary of Rules or Queries with Error (syntax error, exception thrown, time-out)
Name | Group |
---|---|
![]() | Object Oriented Design |
![]() | Object Oriented Design |
![]() | Object Oriented Design |
![]() | Design |
![]() | Dead Code |
![]() | Dead Code |
![]() | Visibility |
Summary of Rules violated

development-time, from within Visual
Studio. Online documentation.

existing code base? Use the option
Recent Violations Only!

can be used to break the build process if
violated. Online documentation.
Application Statistics
Stat | # Occurences | Avg | StdDev | Max |
---|---|---|---|---|
Properties on interfaces | 65 interfaces | 0.15 | 0.47 | 2 properties on FunctionalTests.ILightweightEntity |
Methods on interfaces | 65 interfaces | 0.92 | 0.95 | 4 methods on FunctionalTests.ILightweightEntity |
Arguments on methods on interfaces | 60 methods | 0.83 | 0.86 | 4 arguments on System.Data.Entity.ConnectionFactoryConfig.IOleMessageFilter.HandleInComingCall(Int32,IntPtr,Int32,IntPtr) |
Public properties on classes | 7,601 Classes | 0.77 | 2.09 | 38 public properties on FunctionalTests.Model.Product |
Public methods on classes | 7,601 classes | 4.78 | 18.44 | 1380 public methods on ProductivityApiTests.LinqTests |
Arguments on public methods on classes | 36,337 methods | 0.25 | 0.57 | 15 arguments on <>f__AnonymousType1d<<Entity>j__TPar,<StringProp>j__TPar,<BoolProp>j__TPar,<GuidProp>j__TPar,<ByteProp>j__TPar,<ShortProp>j__TPar,<IntProp>j__TPar,<LongProp>j__TPar,<DoubleProp>j__TPar,<FloatProp>j__TPar,<DecimalProp>j__TPar,<EnumProp>j__TPar,<DateTimeProp>j__TPar,<DateTimeOffsetProp>j__TPar,<TimeSpanProp>j__TPar>..ctor(<Entity>j__TPar,<StringProp>j__TPar,<BoolProp>j__TPar,<GuidProp>j__TPar,<ByteProp>j__TPar,<ShortProp>j__TPar,<IntProp>j__TPar,<LongProp>j__TPar,<DoubleProp>j__TPar,<FloatProp>j__TPar,<DecimalProp>j__TPar,<EnumProp>j__TPar,<DateTimeProp>j__TPar,<DateTimeOffsetProp>j__TPar,<TimeSpanProp>j__TPar) |
IL instructions in non-abstract methods | 47,277 methods | 24.08 | 59.31 | 5428 IL instructions in System.Data.Entity.QueryableExtensionsTests.Extension_methods_call_provider_ExecuteAsync() |
Cyclomatic complexity on non abstract Methods | 47,277 Methods | 1.45 | 1.92 | CC = 181 for System.Data.Entity.QueryableExtensionsTests.Extension_methods_validate_arguments() |
Assemblies Metrics
Clicking column header arrows sorts values.
Clicking column header title text redirect to the online Code Metric definition.
Assemblies | # lines of code | # IL instruction | # Types | # Abstract Types | # lines of comment | % Comment | % Coverage | Afferent Coupling | Efferent Coupling | Relational Cohesion | Instability | Abstractness | Distance |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
EntityFramework.FunctionalTests .Transitional v0.0.0.0 | 13467 | 180431 | 1216 | 72 | 1161 | 7 | - | 1159 | 475 | 2.33 | 0.29 | 0.06 | 0.46 |
EntityFramework.FunctionalTests .ProviderAgnostic v1.0.0.0 | 2010 | 29742 | 185 | 3 | 181 | 8 | - | 0 | 240 | 2.62 | 1 | 0.02 | 0.01 |
EntityFramework.FunctionalTests v0.0.0.0 | 27869 | 396844 | 2363 | 27 | 2510 | 8 | - | 42 | 811 | 2.01 | 0.95 | 0.01 | 0.03 |
EntityFramework.VBTests v0.0.0.0 | 614 | 7510 | 67 | 0 | - | - | - | 0 | 110 | 2.36 | 1 | 0.01 | 0.01 |
EntityFramework.UnitTests v0.0.0.0 | 48126 | 523950 | 3935 | 94 | 1639 | 3 | - | 0 | 1012 | 1.59 | 1 | 0.02 | 0.02 |
Types Metrics
If the code base analyzed has too many types, NDepend doesn't list Types Metrics to avoid a too big report. The section Types Metrics can be activated by unchecking the option: NDepend Project Properties > Report > Avoid too big report for large code base > Hide section Types Metrics if... It is recommended to use the NDepend interactive UI capabilities to browse large applications. |
Namespaces Metrics
Clicking column header arrows sorts values.
Clicking column header title text redirect to the online Code Metric definition.
Namespaces | # lines of code | # IL instruction | # Types | # lines of comment | % Comment | % Coverage | Afferent Coupling | Efferent Coupling |
---|---|---|---|---|---|---|---|---|
EntityFramework.FunctionalTests .Transitional.dll:: | 0 | 8933 | 84 | - | - | - | 4 | 5 |
EntityFramework.FunctionalTests .Transitional.dll::System.Data.Entity | 1345 | 11485 | 86 | 806 | 37 | - | 87 | 59 |
EntityFramework.FunctionalTests .Transitional.dll::System.Data.Entity .CodeFirst | 42 | 720 | 17 | 0 | 0 | - | 0 | 14 |
System.Data.Entity.Design | 30 | 297 | 2 | 3 | 9 | - | 0 | 19 |
System.Data.Entity.MetadataMapping | 255 | 2733 | 9 | 8 | 3 | - | 0 | 14 |
EntityFramework.FunctionalTests .Transitional.dll::System.Data.Entity .TestHelpers | 203 | 1908 | 23 | 24 | 10 | - | 27 | 35 |
EntityFramework.FunctionalTests .Transitional.dll::System.Data.Entity .Migrations | 142 | 3925 | 41 | 2 | 1 | - | 13 | 18 |
System.Data.Entity.Migrations .UserRoles_v1 | 0 | 46 | 2 | 0 | 0 | - | 1 | 3 |
System.Data.Entity.Migrations .UserRoles_v2 | 0 | 46 | 2 | 0 | 0 | - | 1 | 3 |
System.Data.Entity.Migrations .OSpaceRenames_v1 | 0 | 269 | 13 | 0 | 0 | - | 1 | 4 |
System.Data.Entity.Migrations .OSpaceRenames_v2 | 0 | 269 | 13 | 0 | 0 | - | 1 | 4 |
FunctionalTests | 7435 | 110399 | 761 | 103 | 1 | - | 2 | 37 |
FunctionalTests.Bug223284A | 0 | 23 | 1 | 0 | 0 | - | 1 | 2 |
FunctionalTests.Bug223284B | 4 | 73 | 4 | 0 | 0 | - | 0 | 8 |
FunctionalTests.Bug175804 | 21 | 270 | 5 | 0 | 0 | - | 0 | 14 |
FunctionalTests.BugDevDiv_178590 | 26 | 226 | 7 | 1 | 3 | - | 0 | 12 |
FunctionalTests.Bug165027 | 10 | 201 | 5 | 0 | 0 | - | 0 | 9 |
FunctionalTests.Bug178568 | 41 | 610 | 4 | 0 | 0 | - | 0 | 13 |
FunctionalTests.Bug336566 | 38 | 518 | 4 | 0 | 0 | - | 0 | 13 |
FunctionalTests.Bug335965 | 28 | 304 | 9 | 1 | 3 | - | 0 | 9 |
FunctionalTests.Bug339467 | 5 | 61 | 4 | 0 | 0 | - | 0 | 6 |
FunctionalTests.Bug336706 | 11 | 172 | 3 | 0 | 0 | - | 0 | 12 |
EntityFramework.FunctionalTests .Transitional.dll::FunctionalTests.Model | 3696 | 31912 | 79 | 6 | 0 | - | 2 | 13 |
EntityFramework.FunctionalTests .Transitional.dll::SimpleModel | 49 | 889 | 16 | 3 | 5 | - | 20 | 13 |
ConcurrencyModel | 65 | 3926 | 14 | 7 | 9 | - | 3 | 18 |
EntityFramework.FunctionalTests .Transitional.dll::ProductivityApiTests | 21 | 201 | 3 | 4 | 16 | - | 0 | 7 |
DaFunc | 0 | 15 | 5 | 15 | 100 | - | 2 | 3 |
EntityFramework.FunctionalTests .ProviderAgnostic.dll:: | 0 | 1547 | 14 | - | - | - | 5 | 5 |
EntityFramework.FunctionalTests .ProviderAgnostic.dll::System.Data .Entity.CodeFirst | 264 | 3714 | 66 | 24 | 8 | - | 0 | 24 |
System.Data.Entity.Configuration | 24 | 206 | 3 | 0 | 0 | - | 2 | 17 |
EntityFramework.FunctionalTests .ProviderAgnostic.dll::System.Data .Entity.ProductivityApi | 80 | 1151 | 9 | 1 | 1 | - | 0 | 17 |
EntityFramework.FunctionalTests .ProviderAgnostic.dll::System.Data .Entity.Functionals.Utilities | 279 | 2404 | 19 | 5 | 1 | - | 2 | 14 |
EntityFramework.FunctionalTests .ProviderAgnostic.dll::System.Data .Entity.Query | 5 | 34 | 1 | 0 | 0 | - | 1 | 3 |
EntityFramework.FunctionalTests .ProviderAgnostic.dll::System.Data .Entity.Query.LinqToEntities | 591 | 11597 | 20 | 11 | 1 | - | 0 | 17 |
System.Data.Entity.TestModels .ExtraLazyLoading | 67 | 704 | 10 | 7 | 9 | - | 1 | 14 |
System.Data.Entity.TestModels .ProviderAgnosticModel | 157 | 3389 | 21 | 10 | 5 | - | 2 | 12 |
EntityFramework.FunctionalTests .ProviderAgnostic .dll::ProductivityApiTests | 543 | 4996 | 22 | 17 | 3 | - | 0 | 27 |
EntityFramework.FunctionalTests.dll:: | 2 | 16335 | 128 | - | - | - | 22 | 7 |
EntityFramework.FunctionalTests .dll::System.Data.Entity | 71 | 657 | 12 | 65 | 47 | - | 14 | 25 |
EntityFramework.FunctionalTests .dll::System.Data.Entity.CodeFirst | 286 | 3847 | 20 | 16 | 5 | - | 0 | 30 |
System.Data.Entity.Interception | 736 | 7085 | 56 | 14 | 1 | - | 0 | 38 |
System.Data.Entity.Metadata | 678 | 8135 | 72 | 21 | 3 | - | 0 | 34 |
System.Data.Entity.Objects | 1339 | 13470 | 55 | 89 | 6 | - | 0 | 41 |
EntityFramework.FunctionalTests .dll::System.Data.Entity.ProductivityApi | 189 | 2109 | 11 | 6 | 3 | - | 0 | 21 |
EntityFramework.FunctionalTests .dll::System.Data.Entity.SqlServer | 350 | 3121 | 18 | 48 | 12 | - | 0 | 21 |
EntityFramework.FunctionalTests .dll::System.Data.Entity .SqlServerCompact | 46 | 348 | 3 | 0 | 0 | - | 0 | 19 |
System.Data.Entity.TestDoubles | 993 | 16447 | 51 | 5 | 0 | - | 1 | 23 |
EntityFramework.FunctionalTests .dll::System.Data.Entity.TestHelpers | 52 | 512 | 6 | 0 | 0 | - | 12 | 12 |
System.Data.Entity.Update | 305 | 4353 | 28 | 7 | 2 | - | 0 | 23 |
System.Data.Entity.ViewGeneration | 130 | 1492 | 29 | 6 | 4 | - | 0 | 24 |
System.Data.Entity.WrappingProvider | 205 | 1878 | 18 | 6 | 2 | - | 2 | 27 |
System.Data.Entity.EntityClient | 87 | 1119 | 6 | 0 | 0 | - | 0 | 19 |
System.Data.Entity.Meta | 18 | 142 | 1 | 14 | 43 | - | 0 | 8 |
EntityFramework.FunctionalTests .dll::System.Data.Entity.Functionals .Utilities | 279 | 2404 | 19 | 5 | 1 | - | 11 | 14 |
EntityFramework.FunctionalTests .dll::System.Data.Entity.Migrations | 3688 | 38162 | 406 | 76 | 2 | - | 10 | 64 |
System.Data.Entity.Migrations.UpDownUp | 25 | 314 | 13 | 0 | 0 | - | 2 | 14 |
System.Data.Entity.Migrations .UpDownUpPartial | 9 | 127 | 4 | 0 | 0 | - | 1 | 14 |
System.Data.Entity.Migrations.NotReady | 0 | 3 | 1 | 0 | 0 | - | 1 | 3 |
System.Data.Entity.Migrations .CustomOperations | 4 | 28 | 1 | 0 | 0 | - | 1 | 5 |
EntityFramework.FunctionalTests .dll::System.Data.Entity.Query | 1474 | 18334 | 127 | 75 | 4 | - | 5 | 42 |
EntityFramework.FunctionalTests .dll::System.Data.Entity.Query .LinqToEntities | 1024 | 23307 | 99 | 48 | 4 | - | 0 | 32 |
System.Data.Entity.Query .StoredProcedures | 94 | 1173 | 10 | 5 | 5 | - | 0 | 14 |
EntityFramework.FunctionalTests .dll::System.Data.Entity.Core.Objects .ELinq | 252 | 10704 | 19 | 15 | 5 | - | 0 | 14 |
System.Data.Entity.TestModels.ArubaModel | 189 | 3820 | 20 | 6 | 3 | - | 6 | 14 |
System.Data.Entity.TestModels .ArubaCeModel | 27 | 769 | 3 | 0 | 0 | - | 3 | 12 |
System.Data.Entity.TestModels .GearsOfWarModel | 63 | 1560 | 14 | 18 | 22 | - | 3 | 13 |
System.Data.Entity.TestModels .FantasyModel | 171 | 3356 | 31 | 33 | 16 | - | 2 | 13 |
PlanCompilerTests | 295 | 5214 | 4 | 40 | 11 | - | 0 | 15 |
EntityFramework.FunctionalTests .dll::ProductivityApiTests | 13043 | 159604 | 855 | 1035 | 7 | - | 2 | 92 |
FunctionalTests.SimpleMigrationsModel | 15 | 276 | 5 | 0 | 0 | - | 2 | 13 |
EntityFramework.FunctionalTests .dll::FunctionalTests.Model | 0 | 232 | 4 | 0 | 0 | - | 0 | 3 |
FunctionalTests.ProductivityApi | 622 | 30019 | 26 | 5 | 0 | - | 0 | 18 |
FunctionalTests.ProductivityApi .TemplateModels.CsAdvancedPatterns | 81 | 1254 | 13 | 0 | 0 | - | 1 | 7 |
FunctionalTests.ProductivityApi .TemplateModels.CsMonsterModel | 46 | 2306 | 37 | 0 | 0 | - | 2 | 8 |
TheMoon | 4 | 126 | 4 | 0 | 0 | - | 1 | 3 |
TheEarth | 4 | 126 | 4 | 0 | 0 | - | 1 | 3 |
AdvancedPatternsModel | 55 | 1424 | 18 | 1 | 1 | - | 2 | 11 |
AllTypeKeysModel | 43 | 951 | 15 | 2 | 4 | - | 1 | 12 |
EntityFramework.FunctionalTests .dll::Another.Place | 13 | 280 | 6 | 0 | 0 | - | 2 | 5 |
EntityFramework.FunctionalTests .dll::SimpleModel | 103 | 2188 | 20 | 23 | 18 | - | 1 | 16 |
CodeFirstTest | 82 | 718 | 6 | 6 | 6 | - | 0 | 18 |
NamespaceForContext | 7 | 65 | 3 | 0 | 0 | - | 1 | 7 |
NamespaceForEntities1 | 0 | 13 | 1 | 0 | 0 | - | 3 | 2 |
NamespaceForEntities2 | 0 | 13 | 1 | 0 | 0 | - | 2 | 3 |
InvalidTypeModel | 0 | 36 | 2 | 0 | 0 | - | 1 | 4 |
This.Is.A.Normal.Namespace | 12 | 97 | 5 | 0 | 0 | - | 1 | 6 |
____._____.__ | 2 | 19 | 1 | 0 | 0 | - | 1 | 5 |
__This.Is_3_Not.Compl3t3ly.Invalid | 2 | 19 | 1 | 0 | 0 | - | 1 | 5 |
_3Unicorns.Starts.With.Underscrore.Digit | 2 | 19 | 1 | 0 | 0 | - | 1 | 5 |
BadMappingModel | 0 | 82 | 4 | 0 | 0 | - | 1 | 2 |
UnSpecifiedOrderingModel | 0 | 46 | 2 | 0 | 0 | - | 1 | 5 |
Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation | 652 | 6606 | 44 | 19 | 2 | - | 0 | 21 |
EntityFramework.VBTests.dll:: | 425 | 5134 | 41 | - | - | - | 1 | 23 |
My | 0 | 737 | 7 | - | - | - | 0 | 16 |
AdvancedPatternsVB | 180 | 1323 | 13 | - | - | - | 1 | 8 |
EntityFramework.VBTests.dll::Another .Place | 9 | 316 | 6 | - | - | - | 1 | 6 |
EntityFramework.UnitTests.dll:: | 0 | 2687 | 27 | - | - | - | 11 | 5 |
EntityFramework.UnitTests.dll::System .Data.Entity | 3460 | 45075 | 348 | 57 | 1 | - | 19 | 52 |
System.Data.Entity.CommandLine | 14 | 105 | 3 | 2 | 12 | - | 0 | 3 |
System.Data.Entity .ConnectionFactoryConfig | 393 | 4708 | 17 | 19 | 4 | - | 0 | 23 |
System.Data.Entity.Edm | 51 | 982 | 8 | 0 | 0 | - | 0 | 9 |
EntityFramework.UnitTests.dll::System .Data.Entity.Spatial | 391 | 6452 | 13 | 1 | 0 | - | 0 | 20 |
System.Data.Entity.Properties | 8 | 49 | 1 | 17 | 68 | - | 1 | 8 |
EntityFramework.UnitTests.dll::System .Data.Entity.Utilities | 1228 | 15908 | 228 | 24 | 1 | - | 0 | 45 |
EntityFramework.UnitTests.dll::System .Data.Entity.Validation | 638 | 7436 | 41 | 7 | 1 | - | 0 | 28 |
EntityFramework.UnitTests.dll::System .Data.Entity.Core | 350 | 3028 | 18 | 2 | 0 | - | 0 | 16 |
System.Data.Entity.Core .SchemaObjectModel | 11 | 71 | 2 | 0 | 0 | - | 0 | 5 |
EntityFramework.UnitTests.dll::System .Data.Entity.Core.Common | 189 | 2378 | 23 | 0 | 0 | - | 0 | 27 |
System.Data.Entity.Core.Common.Utils | 33 | 392 | 5 | 0 | 0 | - | 0 | 11 |
EntityFramework.UnitTests.dll::System .Data.Entity.Core.Common.CommandTrees | 1946 | 15616 | 64 | 14 | 0 | - | 0 | 20 |
System.Data.Entity.Core.Common .CommandTrees.Internal | 11 | 53 | 1 | 0 | 0 | - | 0 | 4 |
System.Data.Entity.Core.Common .CommandTrees.Enums .MembersWithSameValues | 0 | 0 | 1 | 0 | 0 | - | 1 | 1 |
System.Data.Entity.Core.Common .CommandTrees.Enums.MissingMember | 0 | 0 | 1 | 0 | 0 | - | 0 | 1 |
System.Data.Entity.Core.Common .CommandTrees.Enums.AdditionalMember | 0 | 0 | 1 | 0 | 0 | - | 0 | 1 |
System.Data.Entity.Core.Common .CommandTrees.Enums .DifferentUnderlyingTypes | 0 | 0 | 1 | 0 | 0 | - | 0 | 1 |
System.Data.Entity.Core.Common .CommandTrees.Enums .NonEdmCompatibleUnderlyingType | 0 | 0 | 1 | 0 | 0 | - | 0 | 1 |
System.Data.Entity.Core.Common .CommandTrees.Enums.NonExistingMember | 0 | 0 | 1 | 0 | 0 | - | 0 | 1 |
System.Data.Entity.Core.Common .CommandTrees.Enums.DifferentMemberValue | 0 | 0 | 1 | 0 | 0 | - | 0 | 1 |
System.Data.Entity.Core.Common .CommandTrees.Enums.SwapedMembersValues | 0 | 0 | 1 | 0 | 0 | - | 0 | 1 |
System.Data.Entity.Core.Common.Internal .Materialization | 518 | 7081 | 25 | 68 | 11 | - | 4 | 26 |
EntityFramework.UnitTests.dll::System .Data.Entity.Core.EntityClient | 1650 | 23815 | 124 | 93 | 5 | - | 2 | 29 |
System.Data.Entity.Core.EntityClient .Internal | 10 | 77 | 1 | 0 | 0 | - | 0 | 5 |
EntityFramework.UnitTests.dll::System .Data.Entity.Core.Mapping | 1360 | 10898 | 103 | 4 | 0 | - | 0 | 19 |
System.Data.Entity.Core.Mapping.Update .Internal | 524 | 6630 | 39 | 11 | 2 | - | 0 | 25 |
System.Data.Entity.Core.Mapping .ViewGeneration | 42 | 330 | 2 | 0 | 0 | - | 0 | 5 |
System.Data.Entity.Core.Mapping .ViewGeneration.Utils | 2 | 28 | 1 | 0 | 0 | - | 0 | 9 |
EntityFramework.UnitTests.dll::System .Data.Entity.Core.Metadata.Edm | 3207 | 27410 | 191 | 43 | 1 | - | 1 | 33 |
EntityFramework.UnitTests.dll::System .Data.Entity.Core.Objects | 2200 | 31537 | 167 | 59 | 2 | - | 11 | 42 |
EntityFramework.UnitTests.dll::System .Data.Entity.Core.Objects.DataClasses | 673 | 8360 | 67 | 0 | 0 | - | 2 | 30 |
EntityFramework.UnitTests.dll::System .Data.Entity.Core.Objects.ELinq | 315 | 3105 | 14 | 1 | 0 | - | 0 | 18 |
System.Data.Entity.Core.Objects.Internal | 544 | 7472 | 59 | 7 | 1 | - | 1 | 38 |
System.Data.Entity.Core.Query | 23 | 174 | 2 | 5 | 17 | - | 0 | 9 |
System.Data.Entity.Core.Query .InternalTrees | 22 | 257 | 3 | 0 | 0 | - | 0 | 9 |
System.Data.Entity.Core.Query .PlanCompiler | 11 | 67 | 1 | 0 | 0 | - | 0 | 4 |
System.Data.Entity.Core.Query .ResultAssembly | 200 | 1995 | 10 | 21 | 9 | - | 0 | 21 |
EntityFramework.UnitTests.dll::System .Data.Entity.Infrastructure | 4090 | 48427 | 479 | 44 | 1 | - | 1 | 53 |
EntityFramework.UnitTests.dll::System .Data.Entity.Infrastructure.Annotations | 173 | 1865 | 8 | 0 | 0 | - | 0 | 10 |
EntityFramework.UnitTests.dll::System .Data.Entity.Infrastructure .DependencyResolution | 1555 | 19677 | 195 | 133 | 7 | - | 0 | 31 |
EntityFramework.UnitTests.dll::System .Data.Entity.Infrastructure.Interception | 2715 | 29713 | 155 | 21 | 0 | - | 0 | 31 |
EntityFramework.UnitTests.dll::System .Data.Entity.Infrastructure.Design | 49 | 456 | 8 | 0 | 0 | - | 0 | 20 |
EntityFramework.UnitTests.dll::System .Data.Entity.Infrastructure.MappingViews | 49 | 407 | 8 | 0 | 0 | - | 0 | 7 |
System.Data.Entity.Infrastructure .Transactions | 40 | 248 | 2 | 0 | 0 | - | 0 | 10 |
EntityFramework.UnitTests.dll::System .Data.Entity.Infrastructure .Pluralization | 18 | 181 | 2 | 0 | 0 | - | 0 | 5 |
EntityFramework.UnitTests.dll::System .Data.Entity.ModelConfiguration | 529 | 3877 | 24 | 4 | 0 | - | 0 | 23 |
EntityFramework.UnitTests.dll::System .Data.Entity.ModelConfiguration .Conventions | 1851 | 13346 | 182 | 24 | 1 | - | 0 | 20 |
System.Data.Entity.ModelConfiguration .Mappers | 51 | 891 | 13 | 0 | 0 | - | 0 | 9 |
System.Data.Entity.ModelConfiguration .Utilities | 38 | 397 | 9 | 0 | 0 | - | 0 | 12 |
System.Data.Entity.ModelConfiguration .Internal.UnitTests | 36 | 281 | 7 | 17 | 32 | - | 11 | 16 |
EntityFramework.UnitTests.dll::System .Data.Entity.ModelConfiguration .Configuration | 3194 | 27353 | 258 | 82 | 2 | - | 1 | 27 |
System.Data.Entity.ModelConfiguration .Configuration.Conventions | 113 | 716 | 10 | 0 | 0 | - | 0 | 8 |
System.Data.Entity.ModelConfiguration .Configuration.Functions | 579 | 6785 | 46 | 0 | 0 | - | 0 | 17 |
System.Data.Entity.ModelConfiguration .Configuration.Mapping | 93 | 974 | 4 | 0 | 0 | - | 0 | 13 |
System.Data.Entity.ModelConfiguration .Configuration.Types | 149 | 1129 | 11 | 0 | 0 | - | 0 | 15 |
System.Data.Entity.ModelConfiguration .Configuration.Properties.Navigation | 709 | 5925 | 55 | 1 | 0 | - | 0 | 16 |
System.Data.Entity.ModelConfiguration .Configuration.Properties.Primitive | 640 | 3424 | 6 | 0 | 0 | - | 0 | 9 |
System.Data.Entity.ModelConfiguration .Edm | 877 | 6130 | 60 | 4 | 0 | - | 0 | 23 |
System.Data.Entity.ModelConfiguration .Edm.Services | 544 | 3362 | 7 | 1 | 0 | - | 0 | 16 |
System.Data.Entity.ModelConfiguration .Edm.Common | 19 | 104 | 2 | 0 | 0 | - | 0 | 4 |
System.Data.Entity.ModelConfiguration .Edm.Serialization | 43 | 379 | 1 | 0 | 0 | - | 0 | 15 |
System.Data.Entity.ModelConfiguration .Edm.Db | 26 | 150 | 3 | 0 | 0 | - | 0 | 8 |
System.Data.Entity.ModelConfiguration .Edm.Db.Mapping | 76 | 602 | 3 | 0 | 0 | - | 0 | 6 |
System.Data.Entity.Internal | 2023 | 28176 | 252 | 63 | 3 | - | 10 | 50 |
System.Data.Entity.Internal.ConfigFile | 203 | 1564 | 33 | 0 | 0 | - | 0 | 15 |
System.Data.Entity.Internal.Linq | 159 | 2667 | 12 | 7 | 4 | - | 3 | 23 |
EntityFramework.UnitTests.dll::System .Data.Entity.Migrations | 791 | 8732 | 49 | 0 | 0 | - | 0 | 43 |
EntityFramework.UnitTests.dll::System .Data.Entity.Migrations.Builders | 202 | 2288 | 5 | 0 | 0 | - | 0 | 16 |
EntityFramework.UnitTests.dll::System .Data.Entity.Migrations.Model | 522 | 4367 | 27 | 1 | 0 | - | 0 | 14 |
EntityFramework.UnitTests.dll::System .Data.Entity.Migrations.Utilities | 189 | 1857 | 27 | 4 | 2 | - | 0 | 25 |
EntityFramework.UnitTests.dll::System .Data.Entity.Migrations.Design | 420 | 4516 | 11 | 3 | 0 | - | 0 | 19 |
System.Data.Entity.Migrations.Edm | 13 | 90 | 1 | 0 | 0 | - | 0 | 10 |
EntityFramework.UnitTests.dll::System .Data.Entity.Migrations.History | 323 | 3086 | 3 | 0 | 0 | - | 0 | 29 |
EntityFramework.UnitTests.dll::System .Data.Entity.Migrations.Infrastructure | 1859 | 17616 | 105 | 18 | 0 | - | 0 | 52 |
System.Data.Entity.Migrations .Infrastructure.FunctionsModel | 67 | 1441 | 17 | 0 | 0 | - | 3 | 20 |
System.Data.Entity.Migrations .Infrastructure.Tph_to_tpt_v1 | 0 | 56 | 2 | 0 | 0 | - | 1 | 3 |
System.Data.Entity.Migrations .Infrastructure.Tph_to_tpt_v2 | 0 | 59 | 3 | 0 | 0 | - | 1 | 3 |
System.Data.Entity.Migrations .Infrastructure.Renamed_ia_pk_v1 | 0 | 36 | 2 | 0 | 0 | - | 1 | 2 |
System.Data.Entity.Migrations .Infrastructure.Renamed_ia_pk_v2 | 0 | 36 | 2 | 0 | 0 | - | 1 | 2 |
EntityFramework.UnitTests.dll::System .Data.Entity.SqlServerCompact | 297 | 3340 | 13 | 1 | 0 | - | 0 | 34 |
System.Data.Entity.SqlServerCompact .SqlGen | 107 | 840 | 5 | 0 | 0 | - | 0 | 16 |
EntityFramework.UnitTests.dll::System .Data.Entity.SqlServer | 1231 | 15652 | 60 | 5 | 0 | - | 0 | 45 |
System.Data.Entity.SqlServer.SqlGen | 568 | 7357 | 24 | 1 | 0 | - | 0 | 24 |
System.Data.Entity.SqlServer.Utilities | 196 | 2466 | 30 | 0 | 0 | - | 0 | 17 |
EntityFramework.UnitTests.dll::System .ComponentModel.DataAnnotations | 33 | 250 | 3 | 2 | 5 | - | 0 | 4 |
EntityFramework.UnitTests.dll::System .ComponentModel.DataAnnotations.Schema | 176 | 2067 | 6 | 0 | 0 | - | 0 | 6 |
CmdLine | 45 | 284 | 4 | 3 | 6 | - | 0 | 4 |
CmdLine.Tests | 194 | 1853 | 24 | 81 | 29 | - | 0 | 7 |
ProductivityApiUnitTests | 228 | 2279 | 41 | 9 | 3 | - | 0 | 31 |
1102
Code Quality |
|
![]() | Critical Rule warning: Types too big - critical |
warnif count > 0 from t in JustMyCode.Types where
t.NbLinesOfCode > 500
// We've commented # IL Instructions, because with LINQ syntax, a few lines of code can compile to hundreds of IL instructions.
// || t.NbILInstructions > 3000
orderby t.NbLinesOfCode descending
select new { t, t.NbLinesOfCode, t.NbILInstructions,
t.Methods, t.Fields }
// Types where NbLinesOfCode > 500 are extremely complex
// and should be split in a smaller group of types.
// See the definition of the NbLinesOfCode metric here
// http://www.ndepend.com/Metrics.aspx#NbLinesOfCode
// In average, a line of code is compiled to around
// 6 IL instructions. This is why the code metric
// NbILInstructions is used here, in case the
// code metric NbLinesOfCode is un-available because
// of missing assemblies corresponding PDB files.
// See the definition of the NbILInstructions metric here
// http://www.ndepend.com/Metrics.aspx#NbILInstructions
View Code Query or Rule BodyView Code Query or Rule Body
16 types matched
types | # lines of code (LOC) | # IL instructions | Methods | Fields | Full Name |
---|---|---|---|---|---|
BasicMappingScenarioTests | 2 272 | 30 457 | 654 methods | 447 fields | FunctionalTests .BasicMappingScenarioTests |
LinqTests | 2 065 | 32 566 | 1874 methods | 294 fields | ProductivityApiTests.LinqTests |
PropertyApiTests | 1 635 | 24 381 | 553 methods | 77 fields | ProductivityApiTests.PropertyApiTests |
DbExpressionBuilderTests | 1 353 | 10 874 | 551 methods | 256 fields | System.Data.Entity.Core.Common .CommandTrees.DbExpressionBuilderTests |
EdmModelDifferTests | 1 325 | 11 118 | 188 methods | 80 fields | System.Data.Entity.Migrations .Infrastructure.EdmModelDifferTests |
DbSetTests | 1 057 | 8 882 | 268 methods | 34 fields | ProductivityApiTests.DbSetTests |
AssociationScenarioTests | 995 | 15 475 | 227 methods | 86 fields | FunctionalTests.AssociationScenarioTests |
DbContextTests | 969 | 8 539 | 288 methods | 49 fields | ProductivityApiTests.DbContextTests |
DbPropertyValuesTests | 916 | 9 234 | 374 methods | 170 fields | ProductivityApiTests .DbPropertyValuesTests |
QueryableExtensionsTests | 881 | 14 400 | 390 methods | 376 fields | System.Data.Entity .QueryableExtensionsTests |
TransactionsTests | 706 | 6 323 | 91 methods | 5 fields | System.Data.Entity.Objects .TransactionsTests |
FindTests | 693 | 9 142 | 431 methods | 182 fields | ProductivityApiTests.FindTests |
ModelConfigurationTests | 680 | 5 118 | 59 methods | 19 fields | System.Data.Entity.ModelConfiguration .Configuration.ModelConfigurationTests |
InheritanceScenarioTests | 675 | 8 810 | 164 methods | 106 fields | FunctionalTests.InheritanceScenarioTests |
PrimitivePropertyConfigurationTests | 636 | 3 768 | 96 methods | 3 fields | System.Data.Entity.ModelConfiguration .Configuration .PrimitivePropertyConfigurationTests |
ValidationTests | 534 | 5 048 | 79 methods | 14 fields | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .ValidationTests |
Statistics
Stat | # lines of code (LOC) | # IL instructions | Methods | Fields |
---|---|---|---|---|
Sum: | 17 392 | 204 135 | 0 | 0 |
Average: | 1 087 | 12 758 | 0 | 0 |
Minimum: | 534 | 3 768 | 0 | 0 |
Maximum: | 2 272 | 32 566 | 0 | 0 |
Standard deviation: | 501.77 | 8 554 | 0 | 0 |
Variance: | 251 773 | 73 185 624 | 0 | 0 |
![]() | Critical Rule warning: Methods with too many parameters - critical |
warnif count > 0 from m in JustMyCode.Methods where
m.NbParameters > 8
orderby m.NbParameters descending
select new { m, m.NbParameters }
// Methods with more than 8 parameters might be painful to call
// and might degrade performance. You should prefer using
// additional properties/fields to the declaring type to
// handle numerous states. Another alternative is to provide
// a class or structure dedicated to handle arguments passing
// (for example see the class System.Diagnostics.ProcessStartInfo
// and the method System.Diagnostics.Process.Start(ProcessStartInfo))
// See the definition of the NbParameters metric here
// http://www.ndepend.com/Metrics.aspx#NbParameters
View Code Query or Rule BodyView Code Query or Rule Body
9 methods matched
methods | # Parameters | Full Name |
---|---|---|
.ctor(<Entity>j__TPar,<StringProp >j__TPar,<BoolProp>j__TPar,<GuidProp >j__TPar,<ByteProp>j__TPar,<ShortProp >j__TPar,<IntProp>j__TPar,<LongProp >j__TPar,<DoubleProp>j__TPar,<FloatProp >j__TPar,<DecimalProp>j__TPar,<EnumProp >j__TPar,<DateTimeProp>j__TPar, <DateTimeOffsetProp>j__TPar, <TimeSpanProp>j__TPar) | 15 | <>f__AnonymousType1d<<Entity>j__TPar, <StringProp>j__TPar,<BoolProp>j__TPar, <GuidProp>j__TPar,<ByteProp>j__TPar, <ShortProp>j__TPar,<IntProp>j__TPar, <LongProp>j__TPar,<DoubleProp>j__TPar, <FloatProp>j__TPar,<DecimalProp>j__TPar, <EnumProp>j__TPar,<DateTimeProp>j__TPar, <DateTimeOffsetProp>j__TPar, <TimeSpanProp>j__TPar>..ctor(<Entity >j__TPar,<StringProp>j__TPar,<BoolProp >j__TPar,<GuidProp>j__TPar,<ByteProp >j__TPar,<ShortProp>j__TPar,<IntProp >j__TPar,<LongProp>j__TPar,<DoubleProp >j__TPar,<FloatProp>j__TPar,<DecimalProp >j__TPar,<EnumProp>j__TPar,<DateTimeProp >j__TPar,<DateTimeOffsetProp>j__TPar, <TimeSpanProp>j__TPar) |
.ctor(<Binary>j__TPar,<Boolean>j__TPar, <Byte>j__TPar,<DateTime>j__TPar, <DateTimeOffset>j__TPar,<Decimal>j__TPar ,<Double>j__TPar,<Guid>j__TPar,<Int >j__TPar,<Long>j__TPar,<Short>j__TPar, <Single>j__TPar,<String>j__TPar,<Time >j__TPar) | 14 | <>f__AnonymousType38<<Binary>j__TPar, <Boolean>j__TPar,<Byte>j__TPar,<DateTime >j__TPar,<DateTimeOffset>j__TPar, <Decimal>j__TPar,<Double>j__TPar,<Guid >j__TPar,<Int>j__TPar,<Long>j__TPar, <Short>j__TPar,<Single>j__TPar,<String >j__TPar,<Time>j__TPar>..ctor(<Binary >j__TPar,<Boolean>j__TPar,<Byte>j__TPar, <DateTime>j__TPar,<DateTimeOffset >j__TPar,<Decimal>j__TPar,<Double >j__TPar,<Guid>j__TPar,<Int>j__TPar, <Long>j__TPar,<Short>j__TPar,<Single >j__TPar,<String>j__TPar,<Time>j__TPar) |
.ctor(<BoolProp>j__TPar,<ByteProp >j__TPar,<IntProp>j__TPar,<LongProp >j__TPar,<FloatProp>j__TPar,<DoubleProp >j__TPar,<DecimalProp>j__TPar, <DateTimeProp>j__TPar, <DateTimeOffsetProp>j__TPar,<GuidProp >j__TPar,<EnumProp>j__TPar, <EnumPropUnnamedValue>j__TPar, <StringProp>j__TPar) | 13 | <>f__AnonymousType25<<BoolProp>j__TPar, <ByteProp>j__TPar,<IntProp>j__TPar, <LongProp>j__TPar,<FloatProp>j__TPar, <DoubleProp>j__TPar,<DecimalProp>j__TPar ,<DateTimeProp>j__TPar, <DateTimeOffsetProp>j__TPar,<GuidProp >j__TPar,<EnumProp>j__TPar, <EnumPropUnnamedValue>j__TPar, <StringProp>j__TPar>..ctor(<BoolProp >j__TPar,<ByteProp>j__TPar,<IntProp >j__TPar,<LongProp>j__TPar,<FloatProp >j__TPar,<DoubleProp>j__TPar, <DecimalProp>j__TPar,<DateTimeProp >j__TPar,<DateTimeOffsetProp>j__TPar, <GuidProp>j__TPar,<EnumProp>j__TPar, <EnumPropUnnamedValue>j__TPar, <StringProp>j__TPar) |
.ctor(<BoolProp>j__TPar,<ByteProp >j__TPar,<IntProp>j__TPar,<LongProp >j__TPar,<FloatProp>j__TPar,<DoubleProp >j__TPar,<DecimalProp>j__TPar, <DateTimeProp>j__TPar, <DateTimeOffsetProp>j__TPar,<GuidProp >j__TPar,<EnumProp>j__TPar,<StringProp >j__TPar) | 12 | <>f__AnonymousType24<<BoolProp>j__TPar, <ByteProp>j__TPar,<IntProp>j__TPar, <LongProp>j__TPar,<FloatProp>j__TPar, <DoubleProp>j__TPar,<DecimalProp>j__TPar ,<DateTimeProp>j__TPar, <DateTimeOffsetProp>j__TPar,<GuidProp >j__TPar,<EnumProp>j__TPar,<StringProp >j__TPar>..ctor(<BoolProp>j__TPar, <ByteProp>j__TPar,<IntProp>j__TPar, <LongProp>j__TPar,<FloatProp>j__TPar, <DoubleProp>j__TPar,<DecimalProp>j__TPar ,<DateTimeProp>j__TPar, <DateTimeOffsetProp>j__TPar,<GuidProp >j__TPar,<EnumProp>j__TPar,<StringProp >j__TPar) |
.ctor(<Entity>j__TPar,<BoolProp>j__TPar, <GuidProp>j__TPar,<ByteProp>j__TPar, <ShortProp>j__TPar,<IntProp>j__TPar, <LongProp>j__TPar,<DoubleProp>j__TPar, <FloatProp>j__TPar,<DecimalProp>j__TPar, <EnumProp>j__TPar) | 11 | <>f__AnonymousType1e<<Entity>j__TPar, <BoolProp>j__TPar,<GuidProp>j__TPar, <ByteProp>j__TPar,<ShortProp>j__TPar, <IntProp>j__TPar,<LongProp>j__TPar, <DoubleProp>j__TPar,<FloatProp>j__TPar, <DecimalProp>j__TPar,<EnumProp>j__TPar>. .ctor(<Entity>j__TPar,<BoolProp>j__TPar, <GuidProp>j__TPar,<ByteProp>j__TPar, <ShortProp>j__TPar,<IntProp>j__TPar, <LongProp>j__TPar,<DoubleProp>j__TPar, <FloatProp>j__TPar,<DecimalProp>j__TPar, <EnumProp>j__TPar) |
.ctor(<BoolProp>j__TPar,<ByteProp >j__TPar,<IntProp>j__TPar,<LongProp >j__TPar,<FloatProp>j__TPar,<DoubleProp >j__TPar,<DecimalProp>j__TPar, <DateTimeProp>j__TPar, <DateTimeOffsetProp>j__TPar,<GuidProp >j__TPar,<EnumProp>j__TPar) | 11 | <>f__AnonymousType26<<BoolProp>j__TPar, <ByteProp>j__TPar,<IntProp>j__TPar, <LongProp>j__TPar,<FloatProp>j__TPar, <DoubleProp>j__TPar,<DecimalProp>j__TPar ,<DateTimeProp>j__TPar, <DateTimeOffsetProp>j__TPar,<GuidProp >j__TPar,<EnumProp>j__TPar>..ctor( <BoolProp>j__TPar,<ByteProp>j__TPar, <IntProp>j__TPar,<LongProp>j__TPar, <FloatProp>j__TPar,<DoubleProp>j__TPar, <DecimalProp>j__TPar,<DateTimeProp >j__TPar,<DateTimeOffsetProp>j__TPar, <GuidProp>j__TPar,<EnumProp>j__TPar) |
.ctor(String,String,String,String,String ,String,String,String,String,String ,String) | 11 | System.Data.Entity .ConnectionFactoryConfig .FakeConnectionFactoryManyParams..ctor (String,String,String,String,String ,String,String,String,String,String ,String) |
.ctor(String,String,String,String,String ,String,String,String,String,String ,String) | 11 | System.Data.Entity.Internal .FakeConnectionFactoryManyParams..ctor (String,String,String,String,String ,String,String,String,String,String ,String) |
.ctor(<ByteProp>j__TPar,<ShortProp >j__TPar,<IntProp>j__TPar,<LongProp >j__TPar,<FloatProp>j__TPar,<DoubleProp >j__TPar,<DecimalProp>j__TPar, <DateTimeProp>j__TPar,<GuidProp>j__TPar) | 9 | <>f__AnonymousType22<<ByteProp>j__TPar, <ShortProp>j__TPar,<IntProp>j__TPar, <LongProp>j__TPar,<FloatProp>j__TPar, <DoubleProp>j__TPar,<DecimalProp>j__TPar ,<DateTimeProp>j__TPar,<GuidProp>j__TPar >..ctor(<ByteProp>j__TPar,<ShortProp >j__TPar,<IntProp>j__TPar,<LongProp >j__TPar,<FloatProp>j__TPar,<DoubleProp >j__TPar,<DecimalProp>j__TPar, <DateTimeProp>j__TPar,<GuidProp>j__TPar) |
Statistics
Stat | # Parameters |
---|---|
Sum: | 107 |
Average: | 11.89 |
Minimum: | 9 |
Maximum: | 15 |
Standard deviation: | 1.73 |
Variance: | 2.99 |
![]() | Rule warning: Quick summary of methods to refactor |
warnif count > 0 from m in JustMyCode.Methods where
// Code Metrics' definitions
m.NbLinesOfCode > 30 || // http://www.ndepend.com/Metrics.aspx#NbLinesOfCode
// We've commented # IL Instructions, because with LINQ syntax, a few lines of code can compile to hundreds of IL instructions.
// m.NbILInstructions > 200 || // http://www.ndepend.com/Metrics.aspx#NbILInstructions
m.CyclomaticComplexity > 20 || // http://www.ndepend.com/Metrics.aspx#CC
m.ILCyclomaticComplexity > 50 || // http://www.ndepend.com/Metrics.aspx#ILCC
m.ILNestingDepth > 5 || // http://www.ndepend.com/Metrics.aspx#ILNestingDepth
m.NbParameters > 5 || // http://www.ndepend.com/Metrics.aspx#NbParameters
m.NbVariables > 8 || // http://www.ndepend.com/Metrics.aspx#NbVariables
m.NbOverloads > 6 // http://www.ndepend.com/Metrics.aspx#NbOverloads
select new { m, m.NbLinesOfCode, m.NbILInstructions, m.CyclomaticComplexity,
m.ILCyclomaticComplexity, m.ILNestingDepth,
m.NbParameters, m.NbVariables, m.NbOverloads } View Code Query or Rule BodyView Code Query or Rule Body
427 methods matched
methods | # lines of code (LOC) | # IL instructions | Cyclomatic Complexity (CC) | IL Cyclomatic Complexity (ILCC) | IL Nesting Depth | # Parameters | # Variables | # Overloads | Full Name |
---|---|---|---|---|---|---|---|---|---|
.ctor(<VendorID>j__TPar,<Name>j__TPar, <PreferredVendorStatus>j__TPar, <AccountNumber>j__TPar,<ActiveFlag >j__TPar,<CreditRating>j__TPar) | 0 | 21 | N/A | 1 | 0 | 6 | 0 | 1 | <>f__AnonymousType5<<VendorID>j__TPar, <Name>j__TPar,<PreferredVendorStatus >j__TPar,<AccountNumber>j__TPar, <ActiveFlag>j__TPar,<CreditRating >j__TPar>..ctor(<VendorID>j__TPar,<Name >j__TPar,<PreferredVendorStatus>j__TPar, <AccountNumber>j__TPar,<ActiveFlag >j__TPar,<CreditRating>j__TPar) |
Equals(Object) | 0 | 53 | N/A | 3 | 6 | 1 | 2 | 1 | <>f__AnonymousType5<<VendorID>j__TPar, <Name>j__TPar,<PreferredVendorStatus >j__TPar,<AccountNumber>j__TPar, <ActiveFlag>j__TPar,<CreditRating >j__TPar>.Equals(Object) |
CreateContext<TContext> (DbContextConstructorArgumentType,String ) | 31 | 231 | 17 | 23 | 2 | 2 | 4 | 1 | System.Data.Entity.FunctionalTestBase .CreateContext<TContext> (DbContextConstructorArgumentType,String ) |
VerifySetsAreInitialized<TContext> (DbCompiledModelContents,DbProviderInfo) | 48 | 210 | 14 | 18 | 2 | 2 | 3 | 1 | System.Data.Entity.FunctionalTestBase .VerifySetsAreInitialized<TContext> (DbCompiledModelContents,DbProviderInfo) |
BuildStructuralType(XElement) | 42 | 361 | 15 | 30 | 4 | 1 | 11 | 1 | System.Data.Entity .CsdlToClrAssemblyConverter .BuildStructuralType(XElement) |
AddRelationshipAttributes(XDocument ,AssemblyBuilder) | 10 | 130 | 3 | 7 | 3 | 2 | 9 | 1 | System.Data.Entity .CsdlToClrAssemblyConverter .AddRelationshipAttributes(XDocument ,AssemblyBuilder) |
Compile(AssemblyName) | 40 | 263 | 8 | 27 | 3 | 1 | 10 | 2 | System.Data.Entity.DynamicAssembly .Compile(AssemblyName) |
DefineProperty(TypeBuilder ,DynamicProperty) | 44 | 319 | 13 | 19 | 2 | 2 | 9 | 1 | System.Data.Entity.DynamicAssembly .DefineProperty(TypeBuilder ,DynamicProperty) |
GetArgs(Object) | 1 | 54 | 1 | 3 | 1 | 1 | 0 | 12 | System.Data.Entity .AnnotationAttributeBuilder.GetArgs (Object) |
GetArgs(KeyAttribute) | 1 | 7 | 1 | 1 | 0 | 1 | 0 | 12 | System.Data.Entity .AnnotationAttributeBuilder.GetArgs (KeyAttribute) |
GetArgs(RequiredAttribute) | 1 | 7 | 1 | 1 | 0 | 1 | 0 | 12 | System.Data.Entity .AnnotationAttributeBuilder.GetArgs (RequiredAttribute) |
GetArgs(TimestampAttribute) | 1 | 7 | 1 | 1 | 0 | 1 | 0 | 12 | System.Data.Entity .AnnotationAttributeBuilder.GetArgs (TimestampAttribute) |
GetArgs(ConcurrencyCheckAttribute) | 1 | 7 | 1 | 1 | 0 | 1 | 0 | 12 | System.Data.Entity .AnnotationAttributeBuilder.GetArgs (ConcurrencyCheckAttribute) |
GetArgs(StringLengthAttribute) | 1 | 15 | 1 | 1 | 0 | 1 | 0 | 12 | System.Data.Entity .AnnotationAttributeBuilder.GetArgs (StringLengthAttribute) |
GetArgs(MaxLengthAttribute) | 1 | 15 | 1 | 1 | 0 | 1 | 0 | 12 | System.Data.Entity .AnnotationAttributeBuilder.GetArgs (MaxLengthAttribute) |
GetArgs(DatabaseGeneratedAttribute) | 1 | 15 | 1 | 1 | 0 | 1 | 0 | 12 | System.Data.Entity .AnnotationAttributeBuilder.GetArgs (DatabaseGeneratedAttribute) |
GetArgs(EdmEntityTypeAttribute) | 1 | 7 | 1 | 1 | 0 | 1 | 0 | 12 | System.Data.Entity .AnnotationAttributeBuilder.GetArgs (EdmEntityTypeAttribute) |
GetArgs(EdmSchemaAttribute) | 1 | 7 | 1 | 1 | 0 | 1 | 0 | 12 | System.Data.Entity .AnnotationAttributeBuilder.GetArgs (EdmSchemaAttribute) |
GetArgs (EdmRelationshipNavigationPropertyAttrib ute) | 1 | 24 | 1 | 1 | 0 | 1 | 0 | 12 | System.Data.Entity .AnnotationAttributeBuilder.GetArgs (EdmRelationshipNavigationPropertyAttrib ute) |
GetArgs(EdmComplexPropertyAttribute) | 1 | 7 | 1 | 1 | 0 | 1 | 0 | 12 | System.Data.Entity .AnnotationAttributeBuilder.GetArgs (EdmComplexPropertyAttribute) |
ValidateMessage(Exception,Assembly ,String,String,Boolean,Object[]) | 16 | 111 | 6 | 8 | 2 | 6 | 4 | 4 | System.Data.Entity .ExceptionTestExtensions.ValidateMessage (Exception,Assembly,String,String ,Boolean,Object[]) |
IsSameAs(PropertyInfo,PropertyInfo) | 1 | 55 | 7 | 7 | 6 | 2 | 0 | 1 | System.Data.Entity.ModelAssertions .IsSameAs(PropertyInfo,PropertyInfo) |
FindMessageSections(String) | 18 | 156 | 8 | 10 | 3 | 1 | 10 | 1 | System.Data.Entity .StringResourceVerifier .FindMessageSections(String) |
OnModelCreating(DbModelBuilder) | 57 | 1 657 | 2 | 6 | 1 | 1 | 8 | 1 | System.Data.Entity.Migrations .InfoContext.OnModelCreating (DbModelBuilder) |
Seed (InheritanceScenarioTests+TphPersonConte xt) | 10 | 162 | 1 | 1 | 0 | 1 | 13 | 1 | FunctionalTests .InheritanceScenarioTests+TphPersonIniti alizer.Seed (InheritanceScenarioTests+TphPersonConte xt) |
Options_specified_in_IndexAttribute_make _it_into_the_annotation() | 4 | 144 | 1 | 1 | 0 | 0 | 10 | 1 | FunctionalTests.IndexScenarios .Options_specified_in_IndexAttribute_mak e_it_into_the_annotation() |
Seed(SimpleModelContextLegacy) | 2 | 166 | 1 | 1 | 0 | 1 | 13 | 1 | SimpleModel.SimpleModelLegacyInitializer .Seed(SimpleModelContextLegacy) |
.ctor() | 1 | 6 | 1 | 1 | 0 | 0 | 0 | 7 | SimpleModel.SimpleModelContext..ctor() |
.ctor(DbCompiledModel) | 1 | 7 | 1 | 1 | 0 | 1 | 0 | 7 | SimpleModel.SimpleModelContext..ctor (DbCompiledModel) |
.ctor(String) | 1 | 7 | 1 | 1 | 0 | 1 | 0 | 7 | SimpleModel.SimpleModelContext..ctor (String) |
.ctor(String,DbCompiledModel) | 1 | 8 | 1 | 1 | 0 | 2 | 0 | 7 | SimpleModel.SimpleModelContext..ctor (String,DbCompiledModel) |
.ctor(DbConnection,Boolean) | 1 | 8 | 1 | 1 | 0 | 2 | 0 | 7 | SimpleModel.SimpleModelContext..ctor (DbConnection,Boolean) |
.ctor(DbConnection,DbCompiledModel ,Boolean) | 1 | 9 | 1 | 1 | 0 | 3 | 0 | 7 | SimpleModel.SimpleModelContext..ctor (DbConnection,DbCompiledModel,Boolean) |
.ctor(ObjectContext,Boolean) | 1 | 8 | 1 | 1 | 0 | 2 | 0 | 7 | SimpleModel.SimpleModelContext..ctor (ObjectContext,Boolean) |
.ctor() | 1 | 6 | 1 | 1 | 0 | 0 | 0 | 7 | SimpleModel.SimpleModelContextWithNoData ..ctor() |
.ctor(String) | 1 | 7 | 1 | 1 | 0 | 1 | 0 | 7 | SimpleModel.SimpleModelContextWithNoData ..ctor(String) |
.ctor(DbCompiledModel) | 1 | 7 | 1 | 1 | 0 | 1 | 0 | 7 | SimpleModel.SimpleModelContextWithNoData ..ctor(DbCompiledModel) |
.ctor(String,DbCompiledModel) | 1 | 8 | 1 | 1 | 0 | 2 | 0 | 7 | SimpleModel.SimpleModelContextWithNoData ..ctor(String,DbCompiledModel) |
.ctor(DbConnection,Boolean) | 1 | 8 | 1 | 1 | 0 | 2 | 0 | 7 | SimpleModel.SimpleModelContextWithNoData ..ctor(DbConnection,Boolean) |
.ctor(DbConnection,DbCompiledModel ,Boolean) | 1 | 9 | 1 | 1 | 0 | 3 | 0 | 7 | SimpleModel.SimpleModelContextWithNoData ..ctor(DbConnection,DbCompiledModel ,Boolean) |
.ctor(ObjectContext,Boolean) | 1 | 8 | 1 | 1 | 0 | 2 | 0 | 7 | SimpleModel.SimpleModelContextWithNoData ..ctor(ObjectContext,Boolean) |
Seed(SimpleModelContext) | 2 | 166 | 1 | 1 | 0 | 1 | 13 | 1 | SimpleModel.SimpleModelInitializer.Seed (SimpleModelContext) |
Seed(F1Context) | 24 | 3 011 | 3 | 12 | 2 | 1 | 98 | 1 | ConcurrencyModel .ConcurrencyModelInitializer.Seed (F1Context) |
.ctor(Boolean,Boolean) | 2 | 11 | 1 | 1 | 0 | 2 | 0 | 7 | ConcurrencyModel.F1Context..ctor(Boolean ,Boolean) |
.ctor(DbCompiledModel,Boolean,Boolean) | 2 | 12 | 1 | 1 | 0 | 3 | 0 | 7 | ConcurrencyModel.F1Context..ctor (DbCompiledModel,Boolean,Boolean) |
.ctor(String,Boolean,Boolean) | 2 | 12 | 1 | 1 | 0 | 3 | 0 | 7 | ConcurrencyModel.F1Context..ctor(String ,Boolean,Boolean) |
.ctor(String,DbCompiledModel,Boolean ,Boolean) | 2 | 13 | 1 | 1 | 0 | 4 | 0 | 7 | ConcurrencyModel.F1Context..ctor(String ,DbCompiledModel,Boolean,Boolean) |
.ctor(DbConnection,Boolean,Boolean ,Boolean) | 2 | 13 | 1 | 1 | 0 | 4 | 0 | 7 | ConcurrencyModel.F1Context..ctor (DbConnection,Boolean,Boolean,Boolean) |
.ctor(DbConnection,DbCompiledModel ,Boolean,Boolean,Boolean) | 2 | 14 | 1 | 1 | 0 | 5 | 0 | 7 | ConcurrencyModel.F1Context..ctor (DbConnection,DbCompiledModel,Boolean ,Boolean,Boolean) |
.ctor(ObjectContext,Boolean,Boolean ,Boolean) | 2 | 13 | 1 | 1 | 0 | 4 | 0 | 7 | ConcurrencyModel.F1Context..ctor (ObjectContext,Boolean,Boolean,Boolean) |
Entities_with_unmapped_base_class_with_p rivate_property_setters_can_be_manipulat ed() | 37 | 341 | 1 | 3 | 2 | 0 | 12 | 1 | System.Data.Entity.CodeFirst .NonPublicPropertyTests .Entities_with_unmapped_base_class_with_ private_property_setters_can_be_manipula ted() |
IsValidStructuralType(Type) | 2 | 43 | 9 | 3 | 8 | 1 | 0 | 1 | System.Data.Entity.Functionals.Utilities .TypeExtensions.IsValidStructuralType (Type) |
IsValidStructuralPropertyType(Type) | 2 | 48 | 8 | 3 | 7 | 1 | 0 | 1 | System.Data.Entity.Functionals.Utilities .TypeExtensions .IsValidStructuralPropertyType(Type) |
IsSameAs(PropertyInfo,PropertyInfo) | 3 | 61 | 7 | 7 | 6 | 2 | 0 | 1 | System.Data.Entity.Functionals.Utilities .PropertyInfoExtensions.IsSameAs (PropertyInfo,PropertyInfo) |
Multiple_includes() | 17 | 318 | 2 | 13 | 2 | 0 | 10 | 1 | System.Data.Entity.Query.LinqToEntities .IncludeTests.Multiple_includes() |
Seed(ProviderAgnosticContext) | 71 | 823 | 8 | 15 | 2 | 1 | 63 | 1 | System.Data.Entity.TestModels .ProviderAgnosticModel .ProviderAgnosticContextInitializer.Seed (ProviderAgnosticContext) |
Deleting_object_when_relationships_have_ not_been_all_enumerated_should_not_cause _collection_modified_exception_71937() | 31 | 196 | 1 | 6 | 2 | 0 | 4 | 1 | ProductivityApiTests .ChangeTrackingProxyTests .Deleting_object_when_relationships_have _not_been_all_enumerated_should_not_caus e_collection_modified_exception_71937() |
Re_parenting_one_to_zero_or_one_Added_de pendent_should_cause_existing_dependnent _to_be_Deleted_or_Detached(EntityState ,Boolean) | 32 | 181 | 3 | 7 | 2 | 2 | 5 | 1 | ProductivityApiTests .ChangeTrackingProxyTests .Re_parenting_one_to_zero_or_one_Added_d ependent_should_cause_existing_dependnen t_to_be_Deleted_or_Detached(EntityState ,Boolean) |
.ctor(<Entity>j__TPar,<StringProp >j__TPar,<BoolProp>j__TPar,<GuidProp >j__TPar,<ByteProp>j__TPar,<ShortProp >j__TPar,<IntProp>j__TPar,<LongProp >j__TPar,<DoubleProp>j__TPar,<FloatProp >j__TPar,<DecimalProp>j__TPar,<EnumProp >j__TPar,<DateTimeProp>j__TPar, <DateTimeOffsetProp>j__TPar, <TimeSpanProp>j__TPar) | 0 | 48 | N/A | 1 | 0 | 15 | 0 | 1 | <>f__AnonymousType1d<<Entity>j__TPar, <StringProp>j__TPar,<BoolProp>j__TPar, <GuidProp>j__TPar,<ByteProp>j__TPar, <ShortProp>j__TPar,<IntProp>j__TPar, <LongProp>j__TPar,<DoubleProp>j__TPar, <FloatProp>j__TPar,<DecimalProp>j__TPar, <EnumProp>j__TPar,<DateTimeProp>j__TPar, <DateTimeOffsetProp>j__TPar, <TimeSpanProp>j__TPar>..ctor(<Entity >j__TPar,<StringProp>j__TPar,<BoolProp >j__TPar,<GuidProp>j__TPar,<ByteProp >j__TPar,<ShortProp>j__TPar,<IntProp >j__TPar,<LongProp>j__TPar,<DoubleProp >j__TPar,<FloatProp>j__TPar,<DecimalProp >j__TPar,<EnumProp>j__TPar,<DateTimeProp >j__TPar,<DateTimeOffsetProp>j__TPar, <TimeSpanProp>j__TPar) |
Equals(Object) | 0 | 116 | N/A | 3 | 15 | 1 | 2 | 1 | <>f__AnonymousType1d<<Entity>j__TPar, <StringProp>j__TPar,<BoolProp>j__TPar, <GuidProp>j__TPar,<ByteProp>j__TPar, <ShortProp>j__TPar,<IntProp>j__TPar, <LongProp>j__TPar,<DoubleProp>j__TPar, <FloatProp>j__TPar,<DecimalProp>j__TPar, <EnumProp>j__TPar,<DateTimeProp>j__TPar, <DateTimeOffsetProp>j__TPar, <TimeSpanProp>j__TPar>.Equals(Object) |
.ctor(<Entity>j__TPar,<BoolProp>j__TPar, <GuidProp>j__TPar,<ByteProp>j__TPar, <ShortProp>j__TPar,<IntProp>j__TPar, <LongProp>j__TPar,<DoubleProp>j__TPar, <FloatProp>j__TPar,<DecimalProp>j__TPar, <EnumProp>j__TPar) | 0 | 36 | N/A | 1 | 0 | 11 | 0 | 1 | <>f__AnonymousType1e<<Entity>j__TPar, <BoolProp>j__TPar,<GuidProp>j__TPar, <ByteProp>j__TPar,<ShortProp>j__TPar, <IntProp>j__TPar,<LongProp>j__TPar, <DoubleProp>j__TPar,<FloatProp>j__TPar, <DecimalProp>j__TPar,<EnumProp>j__TPar>. .ctor(<Entity>j__TPar,<BoolProp>j__TPar, <GuidProp>j__TPar,<ByteProp>j__TPar, <ShortProp>j__TPar,<IntProp>j__TPar, <LongProp>j__TPar,<DoubleProp>j__TPar, <FloatProp>j__TPar,<DecimalProp>j__TPar, <EnumProp>j__TPar) |
Equals(Object) | 0 | 88 | N/A | 3 | 11 | 1 | 2 | 1 | <>f__AnonymousType1e<<Entity>j__TPar, <BoolProp>j__TPar,<GuidProp>j__TPar, <ByteProp>j__TPar,<ShortProp>j__TPar, <IntProp>j__TPar,<LongProp>j__TPar, <DoubleProp>j__TPar,<FloatProp>j__TPar, <DecimalProp>j__TPar,<EnumProp>j__TPar> .Equals(Object) |
.ctor(<ByteProp>j__TPar,<ShortProp >j__TPar,<IntProp>j__TPar,<LongProp >j__TPar,<FloatProp>j__TPar,<DoubleProp >j__TPar,<DecimalProp>j__TPar, <DateTimeProp>j__TPar,<GuidProp>j__TPar) | 0 | 30 | N/A | 1 | 0 | 9 | 0 | 1 | <>f__AnonymousType22<<ByteProp>j__TPar, <ShortProp>j__TPar,<IntProp>j__TPar, <LongProp>j__TPar,<FloatProp>j__TPar, <DoubleProp>j__TPar,<DecimalProp>j__TPar ,<DateTimeProp>j__TPar,<GuidProp>j__TPar >..ctor(<ByteProp>j__TPar,<ShortProp >j__TPar,<IntProp>j__TPar,<LongProp >j__TPar,<FloatProp>j__TPar,<DoubleProp >j__TPar,<DecimalProp>j__TPar, <DateTimeProp>j__TPar,<GuidProp>j__TPar) |
Equals(Object) | 0 | 74 | N/A | 3 | 9 | 1 | 2 | 1 | <>f__AnonymousType22<<ByteProp>j__TPar, <ShortProp>j__TPar,<IntProp>j__TPar, <LongProp>j__TPar,<FloatProp>j__TPar, <DoubleProp>j__TPar,<DecimalProp>j__TPar ,<DateTimeProp>j__TPar,<GuidProp>j__TPar >.Equals(Object) |
.ctor(<BoolProp>j__TPar,<ByteProp >j__TPar,<IntProp>j__TPar,<LongProp >j__TPar,<FloatProp>j__TPar,<DoubleProp >j__TPar,<DecimalProp>j__TPar, <DateTimeProp>j__TPar, <DateTimeOffsetProp>j__TPar,<GuidProp >j__TPar,<EnumProp>j__TPar,<StringProp >j__TPar) | 0 | 39 | N/A | 1 | 0 | 12 | 0 | 1 | <>f__AnonymousType24<<BoolProp>j__TPar, <ByteProp>j__TPar,<IntProp>j__TPar, <LongProp>j__TPar,<FloatProp>j__TPar, <DoubleProp>j__TPar,<DecimalProp>j__TPar ,<DateTimeProp>j__TPar, <DateTimeOffsetProp>j__TPar,<GuidProp >j__TPar,<EnumProp>j__TPar,<StringProp >j__TPar>..ctor(<BoolProp>j__TPar, <ByteProp>j__TPar,<IntProp>j__TPar, <LongProp>j__TPar,<FloatProp>j__TPar, <DoubleProp>j__TPar,<DecimalProp>j__TPar ,<DateTimeProp>j__TPar, <DateTimeOffsetProp>j__TPar,<GuidProp >j__TPar,<EnumProp>j__TPar,<StringProp >j__TPar) |
Equals(Object) | 0 | 95 | N/A | 3 | 12 | 1 | 2 | 1 | <>f__AnonymousType24<<BoolProp>j__TPar, <ByteProp>j__TPar,<IntProp>j__TPar, <LongProp>j__TPar,<FloatProp>j__TPar, <DoubleProp>j__TPar,<DecimalProp>j__TPar ,<DateTimeProp>j__TPar, <DateTimeOffsetProp>j__TPar,<GuidProp >j__TPar,<EnumProp>j__TPar,<StringProp >j__TPar>.Equals(Object) |
.ctor(<BoolProp>j__TPar,<ByteProp >j__TPar,<IntProp>j__TPar,<LongProp >j__TPar,<FloatProp>j__TPar,<DoubleProp >j__TPar,<DecimalProp>j__TPar, <DateTimeProp>j__TPar, <DateTimeOffsetProp>j__TPar,<GuidProp >j__TPar,<EnumProp>j__TPar, <EnumPropUnnamedValue>j__TPar, <StringProp>j__TPar) | 0 | 42 | N/A | 1 | 0 | 13 | 0 | 1 | <>f__AnonymousType25<<BoolProp>j__TPar, <ByteProp>j__TPar,<IntProp>j__TPar, <LongProp>j__TPar,<FloatProp>j__TPar, <DoubleProp>j__TPar,<DecimalProp>j__TPar ,<DateTimeProp>j__TPar, <DateTimeOffsetProp>j__TPar,<GuidProp >j__TPar,<EnumProp>j__TPar, <EnumPropUnnamedValue>j__TPar, <StringProp>j__TPar>..ctor(<BoolProp >j__TPar,<ByteProp>j__TPar,<IntProp >j__TPar,<LongProp>j__TPar,<FloatProp >j__TPar,<DoubleProp>j__TPar, <DecimalProp>j__TPar,<DateTimeProp >j__TPar,<DateTimeOffsetProp>j__TPar, <GuidProp>j__TPar,<EnumProp>j__TPar, <EnumPropUnnamedValue>j__TPar, <StringProp>j__TPar) |
Equals(Object) | 0 | 102 | N/A | 3 | 13 | 1 | 2 | 1 | <>f__AnonymousType25<<BoolProp>j__TPar, <ByteProp>j__TPar,<IntProp>j__TPar, <LongProp>j__TPar,<FloatProp>j__TPar, <DoubleProp>j__TPar,<DecimalProp>j__TPar ,<DateTimeProp>j__TPar, <DateTimeOffsetProp>j__TPar,<GuidProp >j__TPar,<EnumProp>j__TPar, <EnumPropUnnamedValue>j__TPar, <StringProp>j__TPar>.Equals(Object) |
.ctor(<BoolProp>j__TPar,<ByteProp >j__TPar,<IntProp>j__TPar,<LongProp >j__TPar,<FloatProp>j__TPar,<DoubleProp >j__TPar,<DecimalProp>j__TPar, <DateTimeProp>j__TPar, <DateTimeOffsetProp>j__TPar,<GuidProp >j__TPar,<EnumProp>j__TPar) | 0 | 36 | N/A | 1 | 0 | 11 | 0 | 1 | <>f__AnonymousType26<<BoolProp>j__TPar, <ByteProp>j__TPar,<IntProp>j__TPar, <LongProp>j__TPar,<FloatProp>j__TPar, <DoubleProp>j__TPar,<DecimalProp>j__TPar ,<DateTimeProp>j__TPar, <DateTimeOffsetProp>j__TPar,<GuidProp >j__TPar,<EnumProp>j__TPar>..ctor( <BoolProp>j__TPar,<ByteProp>j__TPar, <IntProp>j__TPar,<LongProp>j__TPar, <FloatProp>j__TPar,<DoubleProp>j__TPar, <DecimalProp>j__TPar,<DateTimeProp >j__TPar,<DateTimeOffsetProp>j__TPar, <GuidProp>j__TPar,<EnumProp>j__TPar) |
Equals(Object) | 0 | 88 | N/A | 3 | 11 | 1 | 2 | 1 | <>f__AnonymousType26<<BoolProp>j__TPar, <ByteProp>j__TPar,<IntProp>j__TPar, <LongProp>j__TPar,<FloatProp>j__TPar, <DoubleProp>j__TPar,<DecimalProp>j__TPar ,<DateTimeProp>j__TPar, <DateTimeOffsetProp>j__TPar,<GuidProp >j__TPar,<EnumProp>j__TPar>.Equals (Object) |
.ctor(<Binary>j__TPar,<Boolean>j__TPar, <Byte>j__TPar,<DateTime>j__TPar, <DateTimeOffset>j__TPar,<Decimal>j__TPar ,<Double>j__TPar,<Guid>j__TPar,<Int >j__TPar,<Long>j__TPar,<Short>j__TPar, <Single>j__TPar,<String>j__TPar,<Time >j__TPar) | 0 | 45 | N/A | 1 | 0 | 14 | 0 | 1 | <>f__AnonymousType38<<Binary>j__TPar, <Boolean>j__TPar,<Byte>j__TPar,<DateTime >j__TPar,<DateTimeOffset>j__TPar, <Decimal>j__TPar,<Double>j__TPar,<Guid >j__TPar,<Int>j__TPar,<Long>j__TPar, <Short>j__TPar,<Single>j__TPar,<String >j__TPar,<Time>j__TPar>..ctor(<Binary >j__TPar,<Boolean>j__TPar,<Byte>j__TPar, <DateTime>j__TPar,<DateTimeOffset >j__TPar,<Decimal>j__TPar,<Double >j__TPar,<Guid>j__TPar,<Int>j__TPar, <Long>j__TPar,<Short>j__TPar,<Single >j__TPar,<String>j__TPar,<Time>j__TPar) |
Equals(Object) | 0 | 109 | N/A | 3 | 14 | 1 | 2 | 1 | <>f__AnonymousType38<<Binary>j__TPar, <Boolean>j__TPar,<Byte>j__TPar,<DateTime >j__TPar,<DateTimeOffset>j__TPar, <Decimal>j__TPar,<Double>j__TPar,<Guid >j__TPar,<Int>j__TPar,<Long>j__TPar, <Short>j__TPar,<Single>j__TPar,<String >j__TPar,<Time>j__TPar>.Equals(Object) |
.ctor(<a>j__TPar,<b>j__TPar,<c>j__TPar, <e>j__TPar,<f>j__TPar,<g>j__TPar,<h >j__TPar) | 0 | 24 | N/A | 1 | 0 | 7 | 0 | 1 | <>f__AnonymousType41<<a>j__TPar,<b >j__TPar,<c>j__TPar,<e>j__TPar,<f >j__TPar,<g>j__TPar,<h>j__TPar>..ctor(<a >j__TPar,<b>j__TPar,<c>j__TPar,<e >j__TPar,<f>j__TPar,<g>j__TPar,<h >j__TPar) |
Equals(Object) | 0 | 60 | N/A | 3 | 7 | 1 | 2 | 1 | <>f__AnonymousType41<<a>j__TPar,<b >j__TPar,<c>j__TPar,<e>j__TPar,<f >j__TPar,<g>j__TPar,<h>j__TPar>.Equals (Object) |
Update_Aruba_entities_using_stored_proce dures() | 50 | 592 | 1 | 5 | 2 | 0 | 9 | 1 | System.Data.Entity.CodeFirst .ModificationFunctionsEndToEndTests .Update_Aruba_entities_using_stored_proc edures() |
Execute_commit_failure_test(Action <Action>,Action<Action>,Int32,Boolean ,Boolean,Boolean) | 26 | 285 | 7 | 24 | 2 | 6 | 6 | 1 | System.Data.Entity.Interception .CommitFailureTests .Execute_commit_failure_test(Action <Action>,Action<Action>,Int32,Boolean ,Boolean,Boolean) |
.ctor (CommandInterceptionTests+CommandMethod ,DbCommand,Exception,TaskStatus,Boolean ,Object) | 8 | 35 | 1 | 1 | 0 | 6 | 0 | 1 | System.Data.Entity.Interception .CommandInterceptionTests+CommandLogItem ..ctor (CommandInterceptionTests+CommandMethod ,DbCommand,Exception,TaskStatus,Boolean ,Object) |
Index_annotations_are_serialized_to_and_ from_XML() | 18 | 343 | 1 | 3 | 2 | 0 | 16 | 1 | System.Data.Entity.Metadata .MetadataAnnotationTests .Index_annotations_are_serialized_to_and _from_XML() |
.ctor() | 25 | 148 | 2 | 7 | 2 | 0 | 9 | 1 | System.Data.Entity.Objects .TransactionFixture..ctor() |
Seed(LazyLoadingTests+TwoIntoOneContext) | 4 | 184 | 1 | 1 | 0 | 1 | 10 | 1 | System.Data.Entity.Objects .LazyLoadingTests+TwoIntoOneInitializer .Seed(LazyLoadingTests+TwoIntoOneContext ) |
Verify_that_order_of_insert_is_based_on_ key_values_and_not_order_of_adding_to_co llection() | 12 | 144 | 1 | 3 | 2 | 0 | 9 | 1 | System.Data.Entity.Update.UpdateTests .Verify_that_order_of_insert_is_based_on _key_values_and_not_order_of_adding_to_c ollection() |
Inserting_entity_that_references_itself_ in_one_to_many_relationship_works() | 9 | 139 | 1 | 3 | 2 | 0 | 9 | 1 | System.Data.Entity.Update.UpdateTests .Inserting_entity_that_references_itself _in_one_to_many_relationship_works() |
Inserting_entities_that_reference_themse lves_in_a_cycle_throws() | 9 | 128 | 1 | 4 | 2 | 0 | 9 | 1 | System.Data.Entity.Update.UpdateTests .Inserting_entities_that_reference_thems elves_in_a_cycle_throws() |
Cascade_delete_works_properly_on_one_to_ many_relationship() | 13 | 130 | 1 | 3 | 2 | 0 | 13 | 1 | System.Data.Entity.Update.UpdateTests .Cascade_delete_works_properly_on_one_to _many_relationship() |
MoveNext() | 15 | 284 | 4 | 23 | 7 | 0 | 3 | 1 | System.Data.Entity.EntityClient .AsyncScenarios+<QueryAsync>d__0 .MoveNext() |
IsValidStructuralType(Type) | 2 | 43 | 9 | 3 | 8 | 1 | 0 | 1 | System.Data.Entity.Functionals.Utilities .TypeExtensions.IsValidStructuralType (Type) |
IsValidStructuralPropertyType(Type) | 2 | 48 | 8 | 3 | 7 | 1 | 0 | 1 | System.Data.Entity.Functionals.Utilities .TypeExtensions .IsValidStructuralPropertyType(Type) |
IsSameAs(PropertyInfo,PropertyInfo) | 3 | 61 | 7 | 7 | 6 | 2 | 0 | 1 | System.Data.Entity.Functionals.Utilities .PropertyInfoExtensions.IsSameAs (PropertyInfo,PropertyInfo) |
CreateMigrator<TContext>(Boolean,Boolean ,String,String,Func<DbConnection,String ,HistoryContext>,IEnumerable<Tuple <String,MigrationSqlGenerator>> ,ScaffoldedMigration[]) | 1 | 15 | 1 | 1 | 0 | 7 | 0 | 3 | System.Data.Entity.Migrations.DbTestCase .CreateMigrator<TContext>(Boolean ,Boolean,String,String,Func<DbConnection ,String,HistoryContext>,IEnumerable <Tuple<String,MigrationSqlGenerator>> ,ScaffoldedMigration[]) |
CreateMigrationsConfiguration<TContext> (Boolean,Boolean,String,String,Func <DbConnection,String,HistoryContext> ,IEnumerable<Tuple<String ,MigrationSqlGenerator>> ,ScaffoldedMigration[]) | 19 | 157 | 8 | 12 | 3 | 7 | 3 | 1 | System.Data.Entity.Migrations.DbTestCase .CreateMigrationsConfiguration<TContext> (Boolean,Boolean,String,String,Func <DbConnection,String,HistoryContext> ,IEnumerable<Tuple<String ,MigrationSqlGenerator>> ,ScaffoldedMigration[]) |
GetCreateHistoryTableOperation(String) | 13 | 100 | 1 | 1 | 0 | 1 | 9 | 1 | System.Data.Entity.Migrations.DbTestCase .GetCreateHistoryTableOperation(String) |
Compile(String,ScaffoldedMigration[]) | 32 | 223 | 5 | 13 | 2 | 2 | 7 | 1 | System.Data.Entity.Migrations .MigrationCompiler.Compile(String ,ScaffoldedMigration[]) |
VerifyUpOperations(IEnumerable <MigrationOperation>) | 52 | 397 | 3 | 17 | 1 | 1 | 10 | 1 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_LotsOfIndexStu ff.VerifyUpOperations(IEnumerable <MigrationOperation>) |
VerifyDownOperations(IEnumerable <MigrationOperation>) | 52 | 397 | 3 | 17 | 1 | 1 | 10 | 1 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_LotsOfIndexStu ff.VerifyDownOperations(IEnumerable <MigrationOperation>) |
OnModelCreating(DbModelBuilder) | 3 | 295 | 1 | 1 | 0 | 1 | 16 | 1 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_LotsOfIndexStu ff+V1.OnModelCreating(DbModelBuilder) |
OnModelCreating(DbModelBuilder) | 3 | 307 | 1 | 1 | 0 | 1 | 16 | 1 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_LotsOfIndexStu ff+V2.OnModelCreating(DbModelBuilder) |
VerifyUpOperations(IEnumerable <MigrationOperation>) | 31 | 227 | 1 | 8 | 1 | 1 | 8 | 1 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_DefaultNameInd exes.VerifyUpOperations(IEnumerable <MigrationOperation>) |
Can_update_when_default_schema_introduce d() | 35 | 269 | 1 | 1 | 0 | 0 | 6 | 1 | System.Data.Entity.Migrations .MultiTenantScenarios .Can_update_when_default_schema_introduc ed() |
Can_script_windows(Boolean) | 42 | 344 | 5 | 11 | 3 | 1 | 12 | 1 | System.Data.Entity.Migrations .ScriptingScenarios.Can_script_windows (Boolean) |
Seed (NullSemanticsTests+NullSemanticsContext ) | 7 | 113 | 1 | 1 | 0 | 1 | 10 | 1 | System.Data.Entity.Query .NullSemanticsTests+NullSemanticsContext Initializer.Seed (NullSemanticsTests+NullSemanticsContext ) |
Statistics
Stat | # lines of code (LOC) | # IL instructions | Cyclomatic Complexity (CC) | IL Cyclomatic Complexity (ILCC) | IL Nesting Depth | # Parameters | # Variables | # Overloads |
---|---|---|---|---|---|---|---|---|
Sum: | 6 682 | 82 769 | 867 | 2 231 | 394 | 591 | 2 618 | 4 396 |
Average: | 15.65 | 193.84 | 2.13 | 5.22 | 0.92 | 1.38 | 6.13 | 10.3 |
Minimum: | 0 | 2 | 0 | 1 | 0 | 0 | 0 | 1 |
Maximum: | 180 | 5 428 | 23 | 181 | 15 | 15 | 98 | 42 |
Standard deviation: | 20.47 | 380.33 | 3.41 | 14.35 | 2.04 | 2.22 | 9.25 | 15.91 |
Variance: | 418.88 | 144 648 | 11.62 | 205.91 | 4.18 | 4.91 | 85.57 | 253.06 |
![]() | Rule warning: Methods too big |
warnif count > 0 from m in JustMyCode.Methods where
m.NbLinesOfCode > 30
// We've commented # IL Instructions, because with LINQ syntax, a few lines of code can compile to hundreds of IL instructions.
// || m.NbILInstructions > 200
orderby m.NbLinesOfCode descending,
m.NbILInstructions descending
select new { m, m.NbLinesOfCode, m.NbILInstructions }
// Methods where NbLinesOfCode > 30 or NbILInstructions > 200
// are extremely complex and should be split in smaller methods.
// See the definition of the NbLinesOfCode metric here
// http://www.ndepend.com/Metrics.aspx#NbLinesOfCodeView Code Query or Rule BodyView Code Query or Rule Body
88 methods matched
methods | # lines of code (LOC) | # IL instructions | Full Name |
---|---|---|---|
Extension_methods_validate_arguments() | 180 | 1 982 | System.Data.Entity .QueryableExtensionsTests .Extension_methods_validate_arguments() |
Extension_methods_throw_on_non_async_sou rce() | 140 | 1 402 | System.Data.Entity .QueryableExtensionsTests .Extension_methods_throw_on_non_async_so urce() |
Extension_methods_call_provider_ExecuteA sync() | 121 | 5 428 | System.Data.Entity .QueryableExtensionsTests .Extension_methods_call_provider_Execute Async() |
Public_members_check_for_null_arguments( ) | 81 | 974 | System.Data.Entity.SqlServer .SqlSpatialServicesTests .Public_members_check_for_null_arguments () |
Seed(ProviderAgnosticContext) | 71 | 823 | System.Data.Entity.TestModels .ProviderAgnosticModel .ProviderAgnosticContextInitializer.Seed (ProviderAgnosticContext) |
Configure_mapping_can_process_one_level_ TPH_on_both_sides_of_tree() | 67 | 562 | System.Data.Entity.ModelConfiguration .Configuration.ModelConfigurationTests .Configure_mapping_can_process_one_level _TPH_on_both_sides_of_tree() |
Configure_mapping_can_process_two_levels _of_TPH() | 65 | 516 | System.Data.Entity.ModelConfiguration .Configuration.ModelConfigurationTests .Configure_mapping_can_process_two_level s_of_TPH() |
Remove_moves_root_to_Deleted_when_graph_ root_is_Added_Unchanged_Modified_or_Dele ted(EntityState,EntityState) | 63 | 459 | ProductivityApiTests.DbSetTests .Remove_moves_root_to_Deleted_when_graph _root_is_Added_Unchanged_Modified_or_Del eted(EntityState,EntityState) |
Attach_moves_root_to_Unchanged_when_FK_g raph_root_is_Unchanged_Modified_or_Delet ed(EntityState,EntityState) | 61 | 440 | ProductivityApiTests.DbSetTests .Attach_moves_root_to_Unchanged_when_FK_ graph_root_is_Unchanged_Modified_or_Dele ted(EntityState,EntityState) |
DbContext_construction_using_connection_ string_and_model_Ctor (ConnectionStringFormat ,DbCompiledModelContents) | 59 | 206 | ProductivityApiTests.DbContextTests .DbContext_construction_using_connection _string_and_model_Ctor (ConnectionStringFormat ,DbCompiledModelContents) |
OnModelCreating(DbModelBuilder) | 57 | 1 657 | System.Data.Entity.Migrations .InfoContext.OnModelCreating (DbModelBuilder) |
Static_fields_are_initialized() | 57 | 173 | System.Data.Entity.Core.Common.Internal .Materialization.CodeGenEmitterTests .Static_fields_are_initialized() |
DbContext_construction_using_connection_ string_and_model_Ctor (ConnectionStringFormat ,DbCompiledModelContents) | 56 | 195 | ProductivityApiTests .DbContextTestsForSqlCe .DbContext_construction_using_connection _string_and_model_Ctor (ConnectionStringFormat ,DbCompiledModelContents) |
Configure_mapping_can_process_two_levels _of_TPC() | 55 | 434 | System.Data.Entity.ModelConfiguration .Configuration.ModelConfigurationTests .Configure_mapping_can_process_two_level s_of_TPC() |
Attach_moves_root_to_Unchanged_when_Inde pendent_graph_root_is_Unchanged_or_Modif ied_or_Deleted(EntityState,EntityState) | 55 | 415 | ProductivityApiTests.DbSetTests .Attach_moves_root_to_Unchanged_when_Ind ependent_graph_root_is_Unchanged_or_Modi fied_or_Deleted(EntityState,EntityState) |
Add_moves_root_to_Added_when_FK_graph_ro ot_is_Added_Unchanged_Modified_or_Delete d(EntityState,EntityState) | 55 | 379 | ProductivityApiTests.DbSetTests .Add_moves_root_to_Added_when_FK_graph_r oot_is_Added_Unchanged_Modified_or_Delet ed(EntityState,EntityState) |
MethodMap_contains_all_supported_LINQ_me thods() | 54 | 762 | System.Data.Entity.Core.Objects.ELinq .ReflectionUtilTests .MethodMap_contains_all_supported_LINQ_m ethods() |
Seed(ArubaContext) | 54 | 322 | System.Data.Entity.TestModels.ArubaModel .ArubaDatabaseSeeder.Seed(ArubaContext) |
VerifyUpOperations(IEnumerable <MigrationOperation>) | 52 | 397 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_LotsOfIndexStu ff.VerifyUpOperations(IEnumerable <MigrationOperation>) |
VerifyDownOperations(IEnumerable <MigrationOperation>) | 52 | 397 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_LotsOfIndexStu ff.VerifyDownOperations(IEnumerable <MigrationOperation>) |
Configure_mapping_can_process_one_level_ TPC_on_both_sides_of_tree() | 52 | 393 | System.Data.Entity.ModelConfiguration .Configuration.ModelConfigurationTests .Configure_mapping_can_process_one_level _TPC_on_both_sides_of_tree() |
Generic_IDbAsyncEnumerable_extension_met hod_equivalents_produce_the_same_results _as_IEnumerable_extension_methods() | 51 | 955 | System.Data.Entity.Infrastructure .DbRawSqlQueryTests+AsIDbAsyncEnumerable .Generic_IDbAsyncEnumerable_extension_me thod_equivalents_produce_the_same_result s_as_IEnumerable_extension_methods() |
Detach_detaches_root_when_FK_graph_root_ is_Added_Unchanged_Modified_or_Deleted (EntityState,EntityState) | 51 | 309 | ProductivityApiTests.DbSetTests .Detach_detaches_root_when_FK_graph_root _is_Added_Unchanged_Modified_or_Deleted (EntityState,EntityState) |
Manipulation_methods_perform_expected_ac tions(Boolean,Boolean,Boolean) | 50 | 687 | System.Data.Entity.Core.Objects.Internal .BufferedDataReaderTests .Manipulation_methods_perform_expected_a ctions(Boolean,Boolean,Boolean) |
Update_Aruba_entities_using_stored_proce dures() | 50 | 592 | System.Data.Entity.CodeFirst .ModificationFunctionsEndToEndTests .Update_Aruba_entities_using_stored_proc edures() |
MergeWith_merges_properties_of_compatibl e_attributes() | 50 | 570 | System.ComponentModel.DataAnnotations .Schema.IndexAttributeTests .MergeWith_merges_properties_of_compatib le_attributes() |
Add_moves_root_to_Added_when_independent _association_graph_root_is_Added_Unchang ed_Modified_or_Deleted(EntityState ,EntityState) | 50 | 357 | ProductivityApiTests.DbSetTests .Add_moves_root_to_Added_when_independen t_association_graph_root_is_Added_Unchan ged_Modified_or_Deleted(EntityState ,EntityState) |
GetAnyProperty_returns_any_property() | 48 | 430 | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties .GetAnyProperty_returns_any_property() |
GetInstanceProperty_returns_any_instance _property() | 48 | 428 | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties .GetInstanceProperty_returns_any_instanc e_property() |
GetDeclaredProperty_returns_any_and_only _declared_properties() | 48 | 422 | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties .GetDeclaredProperty_returns_any_and_onl y_declared_properties() |
GetRuntimeProperty_returns_only_public_p roperties() | 48 | 403 | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties .GetRuntimeProperty_returns_only_public_ properties() |
VerifySetsAreInitialized<TContext> (DbCompiledModelContents,DbProviderInfo) | 48 | 210 | System.Data.Entity.FunctionalTestBase .VerifySetsAreInitialized<TContext> (DbCompiledModelContents,DbProviderInfo) |
Initialization_performed_lazily() | 47 | 557 | System.Data.Entity.Core.Query .ResultAssembly.BridgeDataReaderTests .Initialization_performed_lazily() |
Verify_DbContext_construction_using_conn ection_and_model_Ctor(DbConnection ,DbCompiledModelContents) | 47 | 172 | ProductivityApiTests .DbContextTestsForSqlCe .Verify_DbContext_construction_using_con nection_and_model_Ctor(DbConnection ,DbCompiledModelContents) |
Configure_mapping_can_configure_two_leve ls_of_TPT() | 46 | 318 | System.Data.Entity.ModelConfiguration .Configuration.ModelConfigurationTests .Configure_mapping_can_configure_two_lev els_of_TPT() |
Configure_mapping_can_configure_one_leve l_TPT_on_both_sides_of_tree() | 46 | 318 | System.Data.Entity.ModelConfiguration .Configuration.ModelConfigurationTests .Configure_mapping_can_configure_one_lev el_TPT_on_both_sides_of_tree() |
Property_mapping_configurations_are_crea ted_and_stored_correctly() | 45 | 461 | System.Data.Entity.ModelConfiguration .Configuration.Mapping .EntityMappingConfigurationTests .Property_mapping_configurations_are_cre ated_and_stored_correctly() |
Configure_mapping_can_process_simple_TPH _mapping() | 44 | 325 | System.Data.Entity.ModelConfiguration .Configuration.ModelConfigurationTests .Configure_mapping_can_process_simple_TP H_mapping() |
DefineProperty(TypeBuilder ,DynamicProperty) | 44 | 319 | System.Data.Entity.DynamicAssembly .DefineProperty(TypeBuilder ,DynamicProperty) |
Generate_should_exclude_sgp_properties_f rom_corresponding_function_mappings() | 44 | 238 | System.Data.Entity.ModelConfiguration .Edm.Services .ModificationFunctionMappingGeneratorTes ts .Generate_should_exclude_sgp_properties_ from_corresponding_function_mappings() |
Vistor_methods_validate_expression_is_no n_null() | 43 | 432 | System.Data.Entity.Core.Common .CommandTrees .BasicExpressionVisitorTests .Vistor_methods_validate_expression_is_n on_null() |
Vistor_methods_validate_expression_is_no n_null() | 43 | 432 | System.Data.Entity.Core.Common .CommandTrees.DbExpressionRebinderTests .Vistor_methods_validate_expression_is_n on_null() |
Vistor_methods_validate_expression_is_no n_null() | 43 | 432 | System.Data.Entity.Core.Common .CommandTrees .DefaultExpressionVisitorTests .Vistor_methods_validate_expression_is_n on_null() |
TestComplexCurentValue(DbEntityEntry <Building>,DbComplexPropertyEntry <Building,Address>,Func<Address>) | 43 | 422 | ProductivityApiTests.PropertyApiTests .TestComplexCurentValue(DbEntityEntry <Building>,DbComplexPropertyEntry <Building,Address>,Func<Address>) |
GetDbProviderManifestToken_dispatches_to _interceptors() | 42 | 1 096 | System.Data.Entity.SqlServer .SqlProviderServicesTests+GetDbProviderM anifestToken .GetDbProviderManifestToken_dispatches_t o_interceptors() |
BuildStructuralType(XElement) | 42 | 361 | System.Data.Entity .CsdlToClrAssemblyConverter .BuildStructuralType(XElement) |
Can_script_windows(Boolean) | 42 | 344 | System.Data.Entity.Migrations .ScriptingScenarios.Can_script_windows (Boolean) |
Detach_moves_root_to_Detached_when_indep endent_association_graph_root_is_Added_U nchanged_Modified_or_Deleted(EntityState ,EntityState) | 42 | 260 | ProductivityApiTests.DbSetTests .Detach_moves_root_to_Detached_when_inde pendent_association_graph_root_is_Added_ Unchanged_Modified_or_Deleted (EntityState,EntityState) |
Can_generate_function_mappings_for_entit y_type() | 42 | 226 | System.Data.Entity.ModelConfiguration .Edm.Services .ModificationFunctionMappingGeneratorTes ts .Can_generate_function_mappings_for_enti ty_type() |
Executes_in_a_transaction_using_Executio nStrategy() | 41 | 927 | System.Data.Entity.Core.Objects .ObjectContextTests+RefreshAsync .Executes_in_a_transaction_using_Executi onStrategy() |
Executes_in_a_transaction_using_Executio nStrategy() | 41 | 885 | System.Data.Entity.Core.Objects .ObjectContextTests+Refresh .Executes_in_a_transaction_using_Executi onStrategy() |
Generate_can_map_type_hierarchies_using_ Tph() | 41 | 216 | System.Data.Entity.ModelConfiguration .Edm.Services .DatabaseMappingGeneratorTests .Generate_can_map_type_hierarchies_using _Tph() |
GetDbProviderManifestToken_dispatches_to _interceptors() | 40 | 1 048 | System.Data.Entity.SqlServer .SqlProviderServicesTests+DbCreateDataba se .GetDbProviderManifestToken_dispatches_t o_interceptors() |
Null_check_two_arguments() | 40 | 402 | System.Data.Entity.Core.Common .CommandTrees.DbExpressionBuilderTests .Null_check_two_arguments() |
Compile(AssemblyName) | 40 | 263 | System.Data.Entity.DynamicAssembly .Compile(AssemblyName) |
Can_generate_function_mappings_for_many_ to_many_association_set_mapping() | 40 | 257 | System.Data.Entity.ModelConfiguration .Edm.Services .ModificationFunctionMappingGeneratorTes ts .Can_generate_function_mappings_for_many _to_many_association_set_mapping() |
Returns_rows_affected_when_there_are_res ult_columns() | 38 | 554 | System.Data.Entity.Core.Mapping.Update .Internal .FunctionUpdateCommandTests+ExecuteAsync .Returns_rows_affected_when_there_are_re sult_columns() |
Can_populate_table_model_for_added_table s() | 38 | 270 | System.Data.Entity.Migrations .Infrastructure.EdmModelDifferTests .Can_populate_table_model_for_added_tabl es() |
IsCompatible_returns_errors_for_all_mism atched_binary_properties() | 38 | 247 | System.Data.Entity.ModelConfiguration .Configuration.Properties.Primitive .BinaryPropertyConfigurationTests .IsCompatible_returns_errors_for_all_mis matched_binary_properties() |
IsCompatible_returns_errors_for_all_mism atched_string_properties() | 38 | 247 | System.Data.Entity.ModelConfiguration .Configuration.Properties.Primitive .StringPropertyConfigurationTests .IsCompatible_returns_errors_for_all_mis matched_string_properties() |
CreateDbDataReader(IEnumerable<Object[] >[]) | 37 | 1 021 | System.Data.Entity.Core.Common.Internal .Materialization.MockHelper .CreateDbDataReader(IEnumerable<Object[] >[]) |
ReadOnlyHashSet_calls_underlying_Set_met hods() | 37 | 660 | System.Data.Entity.Infrastructure .DbPropertyValuesTests .ReadOnlyHashSet_calls_underlying_Set_me thods() |
Returns_rows_affected_when_there_are_res ult_columns() | 37 | 485 | System.Data.Entity.Core.Mapping.Update .Internal .FunctionUpdateCommandTests+Execute .Returns_rows_affected_when_there_are_re sult_columns() |
Entities_with_unmapped_base_class_with_p rivate_property_setters_can_be_manipulat ed() | 37 | 341 | System.Data.Entity.CodeFirst .NonPublicPropertyTests .Entities_with_unmapped_base_class_with_ private_property_setters_can_be_manipula ted() |
Public_members_check_for_null_arguments( ) | 36 | 434 | System.Data.Entity.Spatial .DbGeometryTests .Public_members_check_for_null_arguments () |
TestComplexOriginalValue(DbEntityEntry <Building>,DbPropertyEntry<Building ,Address>) | 36 | 423 | ProductivityApiTests.PropertyApiTests .TestComplexOriginalValue(DbEntityEntry <Building>,DbPropertyEntry<Building ,Address>) |
Uses_interception() | 35 | 1 212 | System.Data.Entity.Migrations .ExecuteStatements.Uses_interception() |
DbDeleteDatabase_dispatches_to_intercept ors_for_connections_without_initial_cata log() | 35 | 764 | System.Data.Entity.SqlServer .SqlProviderServicesTests+DbDeleteDataba se .DbDeleteDatabase_dispatches_to_intercep tors_for_connections_without_initial_cat alog() |
Can_update_when_default_schema_introduce d() | 35 | 269 | System.Data.Entity.Migrations .MultiTenantScenarios .Can_update_when_default_schema_introduc ed() |
Configure_mapping_can_process_simple_TPC _mapping() | 35 | 264 | System.Data.Entity.ModelConfiguration .Configuration.ModelConfigurationTests .Configure_mapping_can_process_simple_TP C_mapping() |
OnModelCreating(DbModelBuilder) | 34 | 863 | System.Data.Entity.TestModels.ArubaModel .ArubaContext.OnModelCreating (DbModelBuilder) |
Parameter_values_are_converted_to_DbPara meters_and_passed_correctly_to_DbCommand () | 34 | 469 | System.Data.Entity.Core.Objects .ObjectContextTests+ExecuteStoreCommandA sync .Parameter_values_are_converted_to_DbPar ameters_and_passed_correctly_to_DbComman d() |
TranslateColumnMap_returns_correct_colum ntypes_and_nullablecolumns_for_entity_ty pes() | 34 | 385 | System.Data.Entity.Core.Common.Internal .Materialization.TranslatorTests .TranslateColumnMap_returns_correct_colu mntypes_and_nullablecolumns_for_entity_t ypes() |
TestDbValidationExceptionCtor(Type[]) | 34 | 328 | System.Data.Entity.Validation .DbEntityValidationExceptionTests .TestDbValidationExceptionCtor(Type[]) |
TranslateColumnMap_returns_correct_colum ntypes_and_nullablecolumns_for_associati ons() | 34 | 278 | System.Data.Entity.Core.Common.Internal .Materialization.TranslatorTests .TranslateColumnMap_returns_correct_colu mntypes_and_nullablecolumns_for_associat ions() |
Seed() | 33 | 541 | System.Data.Entity.Query .StoredProcedures.StoredProceduresTests .Seed() |
Returns_rows_affected_when_there_is_a_re ader() | 33 | 526 | System.Data.Entity.Core.Mapping.Update .Internal .DynamicUpdateCommandTests+ExecuteAsync .Returns_rows_affected_when_there_is_a_r eader() |
Parameter_values_are_converted_to_DbPara meters_and_passed_correctly_to_DbCommand () | 33 | 428 | System.Data.Entity.Core.Objects .ObjectContextTests+ExecuteStoreCommand .Parameter_values_are_converted_to_DbPar ameters_and_passed_correctly_to_DbComman d() |
Generate_maps_abstract_type_hierarchies_ correctly() | 33 | 205 | System.Data.Entity.ModelConfiguration .Edm.Services .DatabaseMappingGeneratorTests .Generate_maps_abstract_type_hierarchies _correctly() |
CreateMockObjectContext<TEntity> (EntityConnection,IEntityAdapter) | 32 | 656 | System.Data.Entity.Core.Objects .MockHelper.CreateMockObjectContext <TEntity>(EntityConnection ,IEntityAdapter) |
Returns_rows_affected_when_there_is_a_re ader() | 32 | 462 | System.Data.Entity.Core.Mapping.Update .Internal .DynamicUpdateCommandTests+Execute .Returns_rows_affected_when_there_is_a_r eader() |
DetectChanges_can_be_called_twice_for_nu llable_composite_key_with_related_entiti es() | 32 | 227 | ProductivityApiTests.DetectChangesTests .DetectChanges_can_be_called_twice_for_n ullable_composite_key_with_related_entit ies() |
Compile(String,ScaffoldedMigration[]) | 32 | 223 | System.Data.Entity.Migrations .MigrationCompiler.Compile(String ,ScaffoldedMigration[]) |
IsCompatible_returns_errors_for_all_mism atched_decimal_properties() | 32 | 203 | System.Data.Entity.ModelConfiguration .Configuration.Properties.Primitive .DecimalPropertyConfigurationTests .IsCompatible_returns_errors_for_all_mis matched_decimal_properties() |
Re_parenting_one_to_zero_or_one_Added_de pendent_should_cause_existing_dependnent _to_be_Deleted_or_Detached(EntityState ,Boolean) | 32 | 181 | ProductivityApiTests .ChangeTrackingProxyTests .Re_parenting_one_to_zero_or_one_Added_d ependent_should_cause_existing_dependnen t_to_be_Deleted_or_Detached(EntityState ,Boolean) |
CreateContext<TContext> (DbContextConstructorArgumentType,String ) | 31 | 231 | System.Data.Entity.FunctionalTestBase .CreateContext<TContext> (DbContextConstructorArgumentType,String ) |
VerifyUpOperations(IEnumerable <MigrationOperation>) | 31 | 227 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_DefaultNameInd exes.VerifyUpOperations(IEnumerable <MigrationOperation>) |
Deleting_object_when_relationships_have_ not_been_all_enumerated_should_not_cause _collection_modified_exception_71937() | 31 | 196 | ProductivityApiTests .ChangeTrackingProxyTests .Deleting_object_when_relationships_have _not_been_all_enumerated_should_not_caus e_collection_modified_exception_71937() |
Statistics
Stat | # lines of code (LOC) | # IL instructions |
---|---|---|
Sum: | 4 176 | 48 210 |
Average: | 47.45 | 547.84 |
Minimum: | 31 | 172 |
Maximum: | 180 | 5 428 |
Standard deviation: | 21.69 | 616.67 |
Variance: | 470.25 | 380 282 |
![]() | Rule warning: Methods too complex |
warnif count > 0 from m in JustMyCode.Methods where
m.CyclomaticComplexity > 20 ||
m.ILCyclomaticComplexity > 40 ||
m.ILNestingDepth > 5
orderby m.CyclomaticComplexity descending,
m.ILCyclomaticComplexity descending,
m.ILNestingDepth descending
select new { m, m.CyclomaticComplexity,
m.ILCyclomaticComplexity,
m.ILNestingDepth }
// Methods where CyclomaticComplexity > 20
// or ILCyclomaticComplexity > 40
// or ILNestingDepth > 4
// are hard to understand and maintain
// and should be split in smaller methods.
// See the definition of the complexity metrics here:
// http://www.ndepend.com/Metrics.aspx#CC
// http://www.ndepend.com/Metrics.aspx#ILCC
// http://www.NDepend.com/Metrics.aspx#ILNestingDepthView Code Query or Rule BodyView Code Query or Rule Body
31 methods matched
methods | Cyclomatic Complexity (CC) | IL Cyclomatic Complexity (ILCC) | IL Nesting Depth | Full Name |
---|---|---|---|---|
Remove_moves_root_to_Deleted_when_graph_ root_is_Added_Unchanged_Modified_or_Dele ted(EntityState,EntityState) | 23 | 32 | 3 | ProductivityApiTests.DbSetTests .Remove_moves_root_to_Deleted_when_graph _root_is_Added_Unchanged_Modified_or_Del eted(EntityState,EntityState) |
Attach_moves_root_to_Unchanged_when_FK_g raph_root_is_Unchanged_Modified_or_Delet ed(EntityState,EntityState) | 22 | 30 | 3 | ProductivityApiTests.DbSetTests .Attach_moves_root_to_Unchanged_when_FK_ graph_root_is_Unchanged_Modified_or_Dele ted(EntityState,EntityState) |
Equal<TValue>(FacetValues,FacetValues) | 13 | 3 | 12 | System.Data.Entity.Core.Metadata.Edm .FacetValuesHelpers.Equal<TValue> (FacetValues,FacetValues) |
IsValidStructuralType(Type) | 9 | 3 | 8 | System.Data.Entity.Functionals.Utilities .TypeExtensions.IsValidStructuralType (Type) |
IsValidStructuralType(Type) | 9 | 3 | 8 | System.Data.Entity.Functionals.Utilities .TypeExtensions.IsValidStructuralType (Type) |
IsValidStructuralPropertyType(Type) | 8 | 3 | 7 | System.Data.Entity.Functionals.Utilities .TypeExtensions .IsValidStructuralPropertyType(Type) |
IsValidStructuralPropertyType(Type) | 8 | 3 | 7 | System.Data.Entity.Functionals.Utilities .TypeExtensions .IsValidStructuralPropertyType(Type) |
IsSameAs(PropertyInfo,PropertyInfo) | 7 | 7 | 6 | System.Data.Entity.ModelAssertions .IsSameAs(PropertyInfo,PropertyInfo) |
IsSameAs(PropertyInfo,PropertyInfo) | 7 | 7 | 6 | System.Data.Entity.Functionals.Utilities .PropertyInfoExtensions.IsSameAs (PropertyInfo,PropertyInfo) |
IsSameAs(PropertyInfo,PropertyInfo) | 7 | 7 | 6 | System.Data.Entity.Functionals.Utilities .PropertyInfoExtensions.IsSameAs (PropertyInfo,PropertyInfo) |
MoveNext() | 4 | 23 | 7 | System.Data.Entity.EntityClient .AsyncScenarios+<QueryAsync>d__0 .MoveNext() |
Generic_IDbAsyncEnumerable_extension_met hod_equivalents_produce_the_same_results _as_IEnumerable_extension_methods() | 2 | 95 | 2 | System.Data.Entity.Infrastructure .DbRawSqlQueryTests+AsIDbAsyncEnumerable .Generic_IDbAsyncEnumerable_extension_me thod_equivalents_produce_the_same_result s_as_IEnumerable_extension_methods() |
Initialization_performed_lazily() | 2 | 48 | 1 | System.Data.Entity.Core.Query .ResultAssembly.BridgeDataReaderTests .Initialization_performed_lazily() |
Extension_methods_validate_arguments() | 1 | 181 | 1 | System.Data.Entity .QueryableExtensionsTests .Extension_methods_validate_arguments() |
Extension_methods_throw_on_non_async_sou rce() | 1 | 141 | 1 | System.Data.Entity .QueryableExtensionsTests .Extension_methods_throw_on_non_async_so urce() |
Public_members_check_for_null_arguments( ) | 1 | 82 | 1 | System.Data.Entity.SqlServer .SqlSpatialServicesTests .Public_members_check_for_null_arguments () |
MethodMap_contains_all_supported_LINQ_me thods() | 1 | 55 | 1 | System.Data.Entity.Core.Objects.ELinq .ReflectionUtilTests .MethodMap_contains_all_supported_LINQ_m ethods() |
Vistor_methods_validate_expression_is_no n_null() | 1 | 44 | 1 | System.Data.Entity.Core.Common .CommandTrees .BasicExpressionVisitorTests .Vistor_methods_validate_expression_is_n on_null() |
Vistor_methods_validate_expression_is_no n_null() | 1 | 44 | 1 | System.Data.Entity.Core.Common .CommandTrees.DbExpressionRebinderTests .Vistor_methods_validate_expression_is_n on_null() |
Vistor_methods_validate_expression_is_no n_null() | 1 | 44 | 1 | System.Data.Entity.Core.Common .CommandTrees .DefaultExpressionVisitorTests .Vistor_methods_validate_expression_is_n on_null() |
Null_check_two_arguments() | 1 | 41 | 1 | System.Data.Entity.Core.Common .CommandTrees.DbExpressionBuilderTests .Null_check_two_arguments() |
Equals(Object) | N/A | 3 | 15 | <>f__AnonymousType1d<<Entity>j__TPar, <StringProp>j__TPar,<BoolProp>j__TPar, <GuidProp>j__TPar,<ByteProp>j__TPar, <ShortProp>j__TPar,<IntProp>j__TPar, <LongProp>j__TPar,<DoubleProp>j__TPar, <FloatProp>j__TPar,<DecimalProp>j__TPar, <EnumProp>j__TPar,<DateTimeProp>j__TPar, <DateTimeOffsetProp>j__TPar, <TimeSpanProp>j__TPar>.Equals(Object) |
Equals(Object) | N/A | 3 | 14 | <>f__AnonymousType38<<Binary>j__TPar, <Boolean>j__TPar,<Byte>j__TPar,<DateTime >j__TPar,<DateTimeOffset>j__TPar, <Decimal>j__TPar,<Double>j__TPar,<Guid >j__TPar,<Int>j__TPar,<Long>j__TPar, <Short>j__TPar,<Single>j__TPar,<String >j__TPar,<Time>j__TPar>.Equals(Object) |
Equals(Object) | N/A | 3 | 13 | <>f__AnonymousType25<<BoolProp>j__TPar, <ByteProp>j__TPar,<IntProp>j__TPar, <LongProp>j__TPar,<FloatProp>j__TPar, <DoubleProp>j__TPar,<DecimalProp>j__TPar ,<DateTimeProp>j__TPar, <DateTimeOffsetProp>j__TPar,<GuidProp >j__TPar,<EnumProp>j__TPar, <EnumPropUnnamedValue>j__TPar, <StringProp>j__TPar>.Equals(Object) |
Equals(Object) | N/A | 3 | 12 | <>f__AnonymousType24<<BoolProp>j__TPar, <ByteProp>j__TPar,<IntProp>j__TPar, <LongProp>j__TPar,<FloatProp>j__TPar, <DoubleProp>j__TPar,<DecimalProp>j__TPar ,<DateTimeProp>j__TPar, <DateTimeOffsetProp>j__TPar,<GuidProp >j__TPar,<EnumProp>j__TPar,<StringProp >j__TPar>.Equals(Object) |
Equals(Object) | N/A | 3 | 11 | <>f__AnonymousType1e<<Entity>j__TPar, <BoolProp>j__TPar,<GuidProp>j__TPar, <ByteProp>j__TPar,<ShortProp>j__TPar, <IntProp>j__TPar,<LongProp>j__TPar, <DoubleProp>j__TPar,<FloatProp>j__TPar, <DecimalProp>j__TPar,<EnumProp>j__TPar> .Equals(Object) |
Equals(Object) | N/A | 3 | 11 | <>f__AnonymousType26<<BoolProp>j__TPar, <ByteProp>j__TPar,<IntProp>j__TPar, <LongProp>j__TPar,<FloatProp>j__TPar, <DoubleProp>j__TPar,<DecimalProp>j__TPar ,<DateTimeProp>j__TPar, <DateTimeOffsetProp>j__TPar,<GuidProp >j__TPar,<EnumProp>j__TPar>.Equals (Object) |
Equals(Object) | N/A | 3 | 9 | <>f__AnonymousType22<<ByteProp>j__TPar, <ShortProp>j__TPar,<IntProp>j__TPar, <LongProp>j__TPar,<FloatProp>j__TPar, <DoubleProp>j__TPar,<DecimalProp>j__TPar ,<DateTimeProp>j__TPar,<GuidProp>j__TPar >.Equals(Object) |
Equals(Object) | N/A | 3 | 7 | <>f__AnonymousType41<<a>j__TPar,<b >j__TPar,<c>j__TPar,<e>j__TPar,<f >j__TPar,<g>j__TPar,<h>j__TPar>.Equals (Object) |
Equals(Object) | N/A | 3 | 7 | <>f__AnonymousType3<<Key1>j__TPar,<Key2 >j__TPar,<Key3>j__TPar,<Key4>j__TPar, <Key5>j__TPar,<Key6>j__TPar,<Key7 >j__TPar>.Equals(Object) |
Equals(Object) | N/A | 3 | 6 | <>f__AnonymousType5<<VendorID>j__TPar, <Name>j__TPar,<PreferredVendorStatus >j__TPar,<AccountNumber>j__TPar, <ActiveFlag>j__TPar,<CreditRating >j__TPar>.Equals(Object) |
Statistics
Stat | Cyclomatic Complexity (CC) | IL Cyclomatic Complexity (ILCC) | IL Nesting Depth |
---|---|---|---|
Sum: | 129 | 926 | 189 |
Average: | 6.14 | 29.87 | 6.1 |
Minimum: | 1 | 3 | 1 |
Maximum: | 23 | 181 | 15 |
Standard deviation: | 6.39 | 42.61 | 4.39 |
Variance: | 40.88 | 1 815 | 19.25 |
![]() | Rule warning: Methods potentially poorly commented |
warnif count > 0 from m in JustMyCode.Methods where
m.PercentageComment < 20 &&
m.NbLinesOfCode > 20
orderby m.PercentageComment ascending
select new { m, m.PercentageComment, m.NbLinesOfCode, m.NbLinesOfComment }
// Methods where %Comment < 20 and that have
// at least 20 lines of code might need to be more commented.
// See the definition of the Comments metric here
// http://www.ndepend.com/Metrics.aspx#PercentageComment
// http://www.ndepend.com/Metrics.aspx#NbLinesOfComment View Code Query or Rule BodyView Code Query or Rule Body
282 methods matched
methods | Percentage Comment | # lines of code (LOC) | # lines of comment | Full Name |
---|---|---|---|---|
CreateContext<TContext> (DbContextConstructorArgumentType,String ) | 0 | 31 | 0 | System.Data.Entity.FunctionalTestBase .CreateContext<TContext> (DbContextConstructorArgumentType,String ) |
BuildStructuralType(XElement) | 0 | 42 | 0 | System.Data.Entity .CsdlToClrAssemblyConverter .BuildStructuralType(XElement) |
Compile(AssemblyName) | 0 | 40 | 0 | System.Data.Entity.DynamicAssembly .Compile(AssemblyName) |
DefineProperty(TypeBuilder ,DynamicProperty) | 0 | 44 | 0 | System.Data.Entity.DynamicAssembly .DefineProperty(TypeBuilder ,DynamicProperty) |
Can_use_EdmEnumType_attribute_to_map_OSp ace_enum_type_to_CSpace_enum_type_with_d ifferent_name_NonPOCO() | 0 | 24 | 0 | System.Data.Entity.MetadataMapping .EnumOCMappingTests .Can_use_EdmEnumType_attribute_to_map_OS pace_enum_type_to_CSpace_enum_type_with_ different_name_NonPOCO() |
Generate(AlterColumnOperation) | 0 | 27 | 0 | System.Data.Entity.TestHelpers .SqlServerMigrationSqlGeneratorWtihColla tions.Generate(AlterColumnOperation) |
OnModelCreating(DbModelBuilder) | 0 | 57 | 0 | System.Data.Entity.Migrations .InfoContext.OnModelCreating (DbModelBuilder) |
ToTable_configures_TPT_and_creates_singl e_FK_to_related() | 0 | 24 | 0 | FunctionalTests .BasicMappingScenarioTests .ToTable_configures_TPT_and_creates_sing le_FK_to_related() |
Column_configuration_is_propagated_to_pa rameters() | 0 | 25 | 0 | FunctionalTests .FunctionsScenarioTests+ModificationFunc tions+ConfigurationApis .Column_configuration_is_propagated_to_p arameters() |
Subclasses_can_map_different_composite_F Ks_to_same_column_using_TPH() | 0 | 21 | 0 | FunctionalTests.InheritanceScenarioTests .Subclasses_can_map_different_composite_ FKs_to_same_column_using_TPH() |
Multiple_one_to_one_associations_using_s ame_lifted_nav_prop_are_identified_corre ctly() | 0 | 29 | 0 | FunctionalTests.InheritanceScenarioTests .Multiple_one_to_one_associations_using_ same_lifted_nav_prop_are_identified_corr ectly() |
Clashing_properties_in_TPH_are_uniquifie d() | 0 | 23 | 0 | FunctionalTests.Issue1776 .Clashing_properties_in_TPH_are_uniquifi ed() |
Column_names_are_configured_correctly() | 0 | 22 | 0 | System.Data.Entity.CodeFirst .EntitySplitingTests .Column_names_are_configured_correctly() |
Subclasses_with_different_properties_to_ same_column_using_TPH_can_round_trip() | 0 | 23 | 0 | System.Data.Entity.CodeFirst .InheritanceScenarioTests .Subclasses_with_different_properties_to _same_column_using_TPH_can_round_trip() |
Entities_with_unmapped_base_class_with_p rivate_property_setters_can_be_manipulat ed() | 0 | 37 | 0 | System.Data.Entity.CodeFirst .NonPublicPropertyTests .Entities_with_unmapped_base_class_with_ private_property_setters_can_be_manipula ted() |
Seed(ProviderAgnosticContext) | 0 | 71 | 0 | System.Data.Entity.TestModels .ProviderAgnosticModel .ProviderAgnosticContextInitializer.Seed (ProviderAgnosticContext) |
Re_parenting_one_to_zero_or_one_Added_de pendent_should_cause_existing_dependnent _to_be_Deleted_or_Detached(EntityState ,Boolean) | 0 | 32 | 0 | ProductivityApiTests .ChangeTrackingProxyTests .Re_parenting_one_to_zero_or_one_Added_d ependent_should_cause_existing_dependnen t_to_be_Deleted_or_Detached(EntityState ,Boolean) |
Generic_AsStreaming_can_be_used_on_IQuer yable() | 0 | 22 | 0 | ProductivityApiTests.StreamingTests .Generic_AsStreaming_can_be_used_on_IQue ryable() |
Generic_AsStreaming_can_be_used_directly _on_DbSet() | 0 | 22 | 0 | ProductivityApiTests.StreamingTests .Generic_AsStreaming_can_be_used_directl y_on_DbSet() |
Generic_AsStreaming_can_be_used_directly _on_DbQuery() | 0 | 22 | 0 | ProductivityApiTests.StreamingTests .Generic_AsStreaming_can_be_used_directl y_on_DbQuery() |
Non_generic_AsStreaming_can_be_used_on_I Queryable() | 0 | 23 | 0 | ProductivityApiTests.StreamingTests .Non_generic_AsStreaming_can_be_used_on_ IQueryable() |
Non_generic_AsStreaming_can_be_used_dire ctly_on_DbSet() | 0 | 22 | 0 | ProductivityApiTests.StreamingTests .Non_generic_AsStreaming_can_be_used_dir ectly_on_DbSet() |
Non_generic_AsStreaming_can_be_used_dire ctly_on_DbQuery() | 0 | 23 | 0 | ProductivityApiTests.StreamingTests .Non_generic_AsStreaming_can_be_used_dir ectly_on_DbQuery() |
Non_generic_AsStreaming_can_be_used_on_g eneric_IQueryable() | 0 | 22 | 0 | ProductivityApiTests.StreamingTests .Non_generic_AsStreaming_can_be_used_on_ generic_IQueryable() |
Non_generic_AsStreaming_can_be_used_dire ctly_on_generic_DbSet() | 0 | 22 | 0 | ProductivityApiTests.StreamingTests .Non_generic_AsStreaming_can_be_used_dir ectly_on_generic_DbSet() |
AsStreaming_can_be_used_before_the_rest_ of_the_query() | 0 | 22 | 0 | ProductivityApiTests.StreamingTests .AsStreaming_can_be_used_before_the_rest _of_the_query() |
Generic_ObjectSet_AsStreaming_can_be_use d_on_IQueryable() | 0 | 22 | 0 | ProductivityApiTests.StreamingTests .Generic_ObjectSet_AsStreaming_can_be_us ed_on_IQueryable() |
Generic_ObjectSet_AsStreaming_can_be_use d_directly_on_ObjectSet() | 0 | 22 | 0 | ProductivityApiTests.StreamingTests .Generic_ObjectSet_AsStreaming_can_be_us ed_directly_on_ObjectSet() |
Non_generic_ObjectSet_AsStreaming_can_be _used_on_generic_IQueryable() | 0 | 22 | 0 | ProductivityApiTests.StreamingTests .Non_generic_ObjectSet_AsStreaming_can_b e_used_on_generic_IQueryable() |
Non_generic_ObjectSet_AsStreaming_can_be _used_directly_on_generic_ObjectSet() | 0 | 22 | 0 | ProductivityApiTests.StreamingTests .Non_generic_ObjectSet_AsStreaming_can_b e_used_directly_on_generic_ObjectSet() |
ObjectSet_AsStreaming_can_be_used_before _the_rest_of_the_query() | 0 | 22 | 0 | ProductivityApiTests.StreamingTests .ObjectSet_AsStreaming_can_be_used_befor e_the_rest_of_the_query() |
Update_GearsOfWar_entities_using_stored_ procedures() | 0 | 28 | 0 | System.Data.Entity.CodeFirst .ModificationFunctionsEndToEndTests .Update_GearsOfWar_entities_using_stored _procedures() |
Update_Aruba_entities_using_stored_proce dures() | 0 | 50 | 0 | System.Data.Entity.CodeFirst .ModificationFunctionsEndToEndTests .Update_Aruba_entities_using_stored_proc edures() |
Update_Fantasy_entities_using_stored_pro cedures() | 0 | 24 | 0 | System.Data.Entity.CodeFirst .ModificationFunctionsEndToEndTests .Update_Fantasy_entities_using_stored_pr ocedures() |
Execute_commit_failure_test(Action <Action>,Action<Action>,Int32,Boolean ,Boolean,Boolean) | 0 | 26 | 0 | System.Data.Entity.Interception .CommitFailureTests .Execute_commit_failure_test(Action <Action>,Action<Action>,Int32,Boolean ,Boolean,Boolean) |
TransactionHandler_and_ExecutionStrategy _does_not_retry_on_false_commit_fail_imp lementation(Action <CommitFailureTests+BlogContextCommit>) | 0 | 21 | 0 | System.Data.Entity.Interception .CommitFailureTests .TransactionHandler_and_ExecutionStrateg y_does_not_retry_on_false_commit_fail_im plementation(Action <CommitFailureTests+BlogContextCommit>) |
CommitFailureHandler_prunes_transactions _after_set_amount_implementation(Boolean ) | 0 | 26 | 0 | System.Data.Entity.Interception .CommitFailureTests .CommitFailureHandler_prunes_transaction s_after_set_amount_implementation (Boolean) |
.ctor() | 0 | 25 | 0 | System.Data.Entity.Objects .TransactionFixture..ctor() |
Graph_serialization_works_with_simple_en tity_cycle() | 0 | 27 | 0 | System.Data.Entity.Objects .SerializationScenarios .Graph_serialization_works_with_simple_e ntity_cycle() |
Graph_serialization_works_with_simple_en tity_cycle_with_lazy_loading_diabled() | 0 | 28 | 0 | System.Data.Entity.Objects .SerializationScenarios .Graph_serialization_works_with_simple_e ntity_cycle_with_lazy_loading_diabled() |
Graph_serialization_works_with_change_tr acking_cycle() | 0 | 27 | 0 | System.Data.Entity.Objects .SerializationScenarios .Graph_serialization_works_with_change_t racking_cycle() |
Graph_serialization_works_with_change_tr acking_cycle_and_lazy_loading_disabled() | 0 | 28 | 0 | System.Data.Entity.Objects .SerializationScenarios .Graph_serialization_works_with_change_t racking_cycle_and_lazy_loading_disabled( ) |
Compile(String,ScaffoldedMigration[]) | 0 | 32 | 0 | System.Data.Entity.Migrations .MigrationCompiler.Compile(String ,ScaffoldedMigration[]) |
SyncInfoWrappers() | 0 | 22 | 0 | System.Data.Entity.Migrations .SqlCeTestDatabase.SyncInfoWrappers() |
VerifyUpOperations(IEnumerable <MigrationOperation>) | 0 | 30 | 0 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AddTable .VerifyUpOperations(IEnumerable <MigrationOperation>) |
VerifyUpOperations(IEnumerable <MigrationOperation>) | 0 | 52 | 0 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_LotsOfIndexStu ff.VerifyUpOperations(IEnumerable <MigrationOperation>) |
VerifyDownOperations(IEnumerable <MigrationOperation>) | 0 | 52 | 0 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_LotsOfIndexStu ff.VerifyDownOperations(IEnumerable <MigrationOperation>) |
VerifyUpOperations(IEnumerable <MigrationOperation>) | 0 | 31 | 0 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_DefaultNameInd exes.VerifyUpOperations(IEnumerable <MigrationOperation>) |
VerifyDownOperations(IEnumerable <MigrationOperation>) | 0 | 24 | 0 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_DefaultNameInd exes.VerifyDownOperations(IEnumerable <MigrationOperation>) |
Can_update_when_default_schema_introduce d() | 0 | 35 | 0 | System.Data.Entity.Migrations .MultiTenantScenarios .Can_update_when_default_schema_introduc ed() |
Can_generate_and_update_when_custom_defa ult_schemas() | 0 | 28 | 0 | System.Data.Entity.Migrations .SchemaScenarios .Can_generate_and_update_when_custom_def ault_schemas() |
Can_generate_and_update_clean_database_w hen_custom_default_schemas() | 0 | 21 | 0 | System.Data.Entity.Migrations .SchemaScenarios .Can_generate_and_update_clean_database_ when_custom_default_schemas() |
Can_create_oob_table_with_inline_fk() | 0 | 23 | 0 | System.Data.Entity.Migrations .CreateTableScenarios .Can_create_oob_table_with_inline_fk() |
Can_create_columns_with_default_values_f or_all_types() | 0 | 22 | 0 | System.Data.Entity.Migrations .DefaultValueScenarios .Can_create_columns_with_default_values_ for_all_types() |
Can_create_columns_with_default_value_ex pressions_for_all_types() | 0 | 22 | 0 | System.Data.Entity.Migrations .DefaultValueScenarios .Can_create_columns_with_default_value_e xpressions_for_all_types() |
Grouping_by_all_columns_with_aggregate_f unction_works() | 0 | 28 | 0 | System.Data.Entity.Query.LinqToEntities .GroupByOptimizationTests .Grouping_by_all_columns_with_aggregate_ function_works() |
Seed() | 0 | 33 | 0 | System.Data.Entity.Query .StoredProcedures.StoredProceduresTests .Seed() |
Seed(ArubaContext) | 0 | 54 | 0 | System.Data.Entity.TestModels.ArubaModel .ArubaDatabaseSeeder.Seed(ArubaContext) |
InitializeAndPersistPeople(ArubaContext) | 0 | 22 | 0 | System.Data.Entity.TestModels.ArubaModel .ArubaDatabaseSeeder .InitializeAndPersistPeople(ArubaContext ) |
Seed(GearsOfWarContext) | 0 | 29 | 0 | System.Data.Entity.TestModels .GearsOfWarModel .GearsOfWarDatabaseSeeder.Seed (GearsOfWarContext) |
Seed(FantasyContext) | 0 | 25 | 0 | System.Data.Entity.TestModels .FantasyModel.FantasyDatabaseSeeder.Seed (FantasyContext) |
Lazy_loading_wires_up_collection_navigat ions_correctly() | 0 | 21 | 0 | ProductivityApiTests.DbContextTests .Lazy_loading_wires_up_collection_naviga tions_correctly() |
TestSetPropertyValuesComplex(Func <DbEntityEntry<Building> ,DbPropertyValues>,Func<ObjectStateEntry ,IDataRecord>) | 0 | 23 | 0 | ProductivityApiTests .DbPropertyValuesTests .TestSetPropertyValuesComplex(Func <DbEntityEntry<Building> ,DbPropertyValues>,Func<ObjectStateEntry ,IDataRecord>) |
TestSetNonGenericPropertyValuesComplex (Func<DbEntityEntry,DbPropertyValues> ,Func<ObjectStateEntry,IDataRecord>) | 0 | 23 | 0 | ProductivityApiTests .DbPropertyValuesTests .TestSetNonGenericPropertyValuesComplex (Func<DbEntityEntry,DbPropertyValues> ,Func<ObjectStateEntry,IDataRecord>) |
TestPropertyNames(Func<DbEntityEntry <Building>,DbPropertyValues>) | 0 | 26 | 0 | ProductivityApiTests .DbPropertyValuesTests.TestPropertyNames (Func<DbEntityEntry<Building> ,DbPropertyValues>) |
DetectChanges_can_be_called_twice_for_nu llable_key_with_related_entities() | 0 | 23 | 0 | ProductivityApiTests.DetectChangesTests .DetectChanges_can_be_called_twice_for_n ullable_key_with_related_entities() |
DetectChanges_can_be_called_twice_for_nu llable_composite_key_with_related_entiti es() | 0 | 32 | 0 | ProductivityApiTests.DetectChangesTests .DetectChanges_can_be_called_twice_for_n ullable_composite_key_with_related_entit ies() |
ValidateBuildingAndNameNotModified (AdvancedPatternsMasterContext,Building) | 0 | 21 | 0 | ProductivityApiTests.PropertyApiTests .ValidateBuildingAndNameNotModified (AdvancedPatternsMasterContext,Building) |
Rejecting_changes_to_a_complex_property_ creates_a_new_complex_object_which_is_th en_not_detected_as_changed_by_future_Det ectChanges() | 0 | 23 | 0 | ProductivityApiTests.PropertyApiTests .Rejecting_changes_to_a_complex_property _creates_a_new_complex_object_which_is_t hen_not_detected_as_changed_by_future_De tectChanges() |
Seed(SpatialNorthwindContext) | 0 | 26 | 0 | ProductivityApiTests .SpatialNorthwindInitializer.Seed (SpatialNorthwindContext) |
Seed(AdvancedPatternsModelFirstContext) | 0 | 29 | 0 | FunctionalTests.ProductivityApi .TemplateModels.CsAdvancedPatterns .AdvancedPatternsModelFirstInitializer .Seed(AdvancedPatternsModelFirstContext) |
Seed(AdvancedPatternsMasterContext) | 0 | 24 | 0 | AdvancedPatternsModel .AdvancedPatternsInitializer.Seed (AdvancedPatternsMasterContext) |
Seed(AllTypeKeysContext) | 0 | 23 | 0 | AllTypeKeysModel .AllTypeKeysModelInitializer.Seed (AllTypeKeysContext) |
Seed(SimpleModelForLinq) | 0 | 24 | 0 | SimpleModel .SimpleModelForLinqInitializer.Seed (SimpleModelForLinq) |
OnModelCreating(DbModelBuilder) | 0 | 22 | 0 | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .SelfPopulatingContext.OnModelCreating (DbModelBuilder) |
Test_ValidateEntity_LazyLoading(Boolean) | 0 | 22 | 0 | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .ValidationTests .Test_ValidateEntity_LazyLoading(Boolean ) |
CreateOrder() | 0 | 24 | 0 | TemplateTests.CreateOrder() |
Seed(AdvancedPatternsModelFirstContext) | 0 | 27 | 0 | AdvancedPatternsVB .AdvancedPatternsModelFirstInitializer .Seed(AdvancedPatternsModelFirstContext) |
Extension_methods_validate_arguments() | 0 | 180 | 0 | System.Data.Entity .QueryableExtensionsTests .Extension_methods_validate_arguments() |
Extension_methods_throw_on_non_async_sou rce() | 0 | 140 | 0 | System.Data.Entity .QueryableExtensionsTests .Extension_methods_throw_on_non_async_so urce() |
Extension_methods_call_provider_ExecuteA sync() | 0 | 121 | 0 | System.Data.Entity .QueryableExtensionsTests .Extension_methods_call_provider_Execute Async() |
Async_extension_methods_throw_Operatatio nCanceledException_if_task_is_cancelled( ) | 0 | 21 | 0 | System.Data.Entity .QueryableExtensionsTests .Async_extension_methods_throw_Operatati onCanceledException_if_task_is_cancelled () |
CreateMockInternalEntityEntry (InternalPropertyValues ,InternalPropertyValues) | 0 | 21 | 0 | System.Data.Entity.FakeWithProps .CreateMockInternalEntityEntry (InternalPropertyValues ,InternalPropertyValues) |
.ctor(Boolean,Boolean,Boolean,Boolean) | 0 | 21 | 0 | System.Data.Entity .DatabaseInitializerTracker<TContext ,TInitializer>..ctor(Boolean,Boolean ,Boolean,Boolean) |
Public_members_check_for_null_arguments( ) | 0 | 29 | 0 | System.Data.Entity.Spatial .DbGeographyTests .Public_members_check_for_null_arguments () |
Public_members_check_for_null_arguments( ) | 0 | 36 | 0 | System.Data.Entity.Spatial .DbGeometryTests .Public_members_check_for_null_arguments () |
Properties_correctly_delegate_to_spatial _provider() | 0 | 26 | 0 | System.Data.Entity.Spatial .DbGeometryTests .Properties_correctly_delegate_to_spatia l_provider() |
GetDeclaredProperty_returns_any_and_only _declared_properties() | 0 | 48 | 0 | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties .GetDeclaredProperty_returns_any_and_onl y_declared_properties() |
GetRuntimeProperty_returns_only_public_p roperties() | 0 | 48 | 0 | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties .GetRuntimeProperty_returns_only_public_ properties() |
GetInstanceProperty_returns_any_instance _property() | 0 | 48 | 0 | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties .GetInstanceProperty_returns_any_instanc e_property() |
GetAnyProperty_returns_any_property() | 0 | 48 | 0 | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties .GetAnyProperty_returns_any_property() |
Static_method_returns_the_ExecutionStrat egy_from_resolver() | 0 | 21 | 0 | System.Data.Entity.Core.Common .DbProviderServicesTests+GetExecutionStr ategy .Static_method_returns_the_ExecutionStra tegy_from_resolver() |
Null_check_Join() | 0 | 21 | 0 | System.Data.Entity.Core.Common .CommandTrees.DbExpressionBuilderTests .Null_check_Join() |
Null_check_two_arguments() | 0 | 40 | 0 | System.Data.Entity.Core.Common .CommandTrees.DbExpressionBuilderTests .Null_check_two_arguments() |
.ctor() | 0 | 26 | 0 | System.Data.Entity.Core.Common .CommandTrees.DbExpressionBuilderFixture ..ctor() |
Unary_spatial_functions_produce_correct_ EdmFunction() | 0 | 30 | 0 | System.Data.Entity.Core.Common .CommandTrees.SpatialEdmFunctionsTests .Unary_spatial_functions_produce_correct _EdmFunction() |
Vistor_methods_validate_expression_is_no n_null() | 0 | 43 | 0 | System.Data.Entity.Core.Common .CommandTrees .BasicExpressionVisitorTests .Vistor_methods_validate_expression_is_n on_null() |
Vistor_methods_validate_expression_is_no n_null() | 0 | 43 | 0 | System.Data.Entity.Core.Common .CommandTrees.DbExpressionRebinderTests .Vistor_methods_validate_expression_is_n on_null() |
Vistor_methods_validate_expression_is_no n_null() | 0 | 43 | 0 | System.Data.Entity.Core.Common .CommandTrees .DefaultExpressionVisitorTests .Vistor_methods_validate_expression_is_n on_null() |
Static_fields_are_initialized() | 0 | 57 | 0 | System.Data.Entity.Core.Common.Internal .Materialization.CodeGenEmitterTests .Static_fields_are_initialized() |
Statistics
Stat | Percentage Comment | # lines of code (LOC) | # lines of comment |
---|---|---|---|
Sum: | 587 | 8 861 | 234 |
Average: | 2.08 | 31.42 | 0.83 |
Minimum: | 0 | 21 | 0 |
Maximum: | 18 | 180 | 11 |
Standard deviation: | 4.35 | 16.33 | 1.82 |
Variance: | 18.9 | 266.67 | 3.3 |
![]() | Rule warning: Methods with too many parameters |
warnif count > 0 from m in JustMyCode.Methods where
m.NbParameters > 5
orderby m.NbParameters descending
select new { m, m.NbParameters }
// Methods where NbParameters > 5 might be painful to call
// and might degrade performance. You should prefer using
// additional properties/fields to the declaring type to
// handle numerous states. Another alternative is to provide
// a class or structure dedicated to handle arguments passing
// (for example see the class System.Diagnostics.ProcessStartInfo
// and the method System.Diagnostics.Process.Start(ProcessStartInfo))
// See the definition of the NbParameters metric here
// http://www.ndepend.com/Metrics.aspx#NbParametersView Code Query or Rule BodyView Code Query or Rule Body
30 methods matched
methods | # Parameters | Full Name |
---|---|---|
.ctor(<Entity>j__TPar,<StringProp >j__TPar,<BoolProp>j__TPar,<GuidProp >j__TPar,<ByteProp>j__TPar,<ShortProp >j__TPar,<IntProp>j__TPar,<LongProp >j__TPar,<DoubleProp>j__TPar,<FloatProp >j__TPar,<DecimalProp>j__TPar,<EnumProp >j__TPar,<DateTimeProp>j__TPar, <DateTimeOffsetProp>j__TPar, <TimeSpanProp>j__TPar) | 15 | <>f__AnonymousType1d<<Entity>j__TPar, <StringProp>j__TPar,<BoolProp>j__TPar, <GuidProp>j__TPar,<ByteProp>j__TPar, <ShortProp>j__TPar,<IntProp>j__TPar, <LongProp>j__TPar,<DoubleProp>j__TPar, <FloatProp>j__TPar,<DecimalProp>j__TPar, <EnumProp>j__TPar,<DateTimeProp>j__TPar, <DateTimeOffsetProp>j__TPar, <TimeSpanProp>j__TPar>..ctor(<Entity >j__TPar,<StringProp>j__TPar,<BoolProp >j__TPar,<GuidProp>j__TPar,<ByteProp >j__TPar,<ShortProp>j__TPar,<IntProp >j__TPar,<LongProp>j__TPar,<DoubleProp >j__TPar,<FloatProp>j__TPar,<DecimalProp >j__TPar,<EnumProp>j__TPar,<DateTimeProp >j__TPar,<DateTimeOffsetProp>j__TPar, <TimeSpanProp>j__TPar) |
.ctor(<Binary>j__TPar,<Boolean>j__TPar, <Byte>j__TPar,<DateTime>j__TPar, <DateTimeOffset>j__TPar,<Decimal>j__TPar ,<Double>j__TPar,<Guid>j__TPar,<Int >j__TPar,<Long>j__TPar,<Short>j__TPar, <Single>j__TPar,<String>j__TPar,<Time >j__TPar) | 14 | <>f__AnonymousType38<<Binary>j__TPar, <Boolean>j__TPar,<Byte>j__TPar,<DateTime >j__TPar,<DateTimeOffset>j__TPar, <Decimal>j__TPar,<Double>j__TPar,<Guid >j__TPar,<Int>j__TPar,<Long>j__TPar, <Short>j__TPar,<Single>j__TPar,<String >j__TPar,<Time>j__TPar>..ctor(<Binary >j__TPar,<Boolean>j__TPar,<Byte>j__TPar, <DateTime>j__TPar,<DateTimeOffset >j__TPar,<Decimal>j__TPar,<Double >j__TPar,<Guid>j__TPar,<Int>j__TPar, <Long>j__TPar,<Short>j__TPar,<Single >j__TPar,<String>j__TPar,<Time>j__TPar) |
.ctor(<BoolProp>j__TPar,<ByteProp >j__TPar,<IntProp>j__TPar,<LongProp >j__TPar,<FloatProp>j__TPar,<DoubleProp >j__TPar,<DecimalProp>j__TPar, <DateTimeProp>j__TPar, <DateTimeOffsetProp>j__TPar,<GuidProp >j__TPar,<EnumProp>j__TPar, <EnumPropUnnamedValue>j__TPar, <StringProp>j__TPar) | 13 | <>f__AnonymousType25<<BoolProp>j__TPar, <ByteProp>j__TPar,<IntProp>j__TPar, <LongProp>j__TPar,<FloatProp>j__TPar, <DoubleProp>j__TPar,<DecimalProp>j__TPar ,<DateTimeProp>j__TPar, <DateTimeOffsetProp>j__TPar,<GuidProp >j__TPar,<EnumProp>j__TPar, <EnumPropUnnamedValue>j__TPar, <StringProp>j__TPar>..ctor(<BoolProp >j__TPar,<ByteProp>j__TPar,<IntProp >j__TPar,<LongProp>j__TPar,<FloatProp >j__TPar,<DoubleProp>j__TPar, <DecimalProp>j__TPar,<DateTimeProp >j__TPar,<DateTimeOffsetProp>j__TPar, <GuidProp>j__TPar,<EnumProp>j__TPar, <EnumPropUnnamedValue>j__TPar, <StringProp>j__TPar) |
.ctor(<BoolProp>j__TPar,<ByteProp >j__TPar,<IntProp>j__TPar,<LongProp >j__TPar,<FloatProp>j__TPar,<DoubleProp >j__TPar,<DecimalProp>j__TPar, <DateTimeProp>j__TPar, <DateTimeOffsetProp>j__TPar,<GuidProp >j__TPar,<EnumProp>j__TPar,<StringProp >j__TPar) | 12 | <>f__AnonymousType24<<BoolProp>j__TPar, <ByteProp>j__TPar,<IntProp>j__TPar, <LongProp>j__TPar,<FloatProp>j__TPar, <DoubleProp>j__TPar,<DecimalProp>j__TPar ,<DateTimeProp>j__TPar, <DateTimeOffsetProp>j__TPar,<GuidProp >j__TPar,<EnumProp>j__TPar,<StringProp >j__TPar>..ctor(<BoolProp>j__TPar, <ByteProp>j__TPar,<IntProp>j__TPar, <LongProp>j__TPar,<FloatProp>j__TPar, <DoubleProp>j__TPar,<DecimalProp>j__TPar ,<DateTimeProp>j__TPar, <DateTimeOffsetProp>j__TPar,<GuidProp >j__TPar,<EnumProp>j__TPar,<StringProp >j__TPar) |
.ctor(<Entity>j__TPar,<BoolProp>j__TPar, <GuidProp>j__TPar,<ByteProp>j__TPar, <ShortProp>j__TPar,<IntProp>j__TPar, <LongProp>j__TPar,<DoubleProp>j__TPar, <FloatProp>j__TPar,<DecimalProp>j__TPar, <EnumProp>j__TPar) | 11 | <>f__AnonymousType1e<<Entity>j__TPar, <BoolProp>j__TPar,<GuidProp>j__TPar, <ByteProp>j__TPar,<ShortProp>j__TPar, <IntProp>j__TPar,<LongProp>j__TPar, <DoubleProp>j__TPar,<FloatProp>j__TPar, <DecimalProp>j__TPar,<EnumProp>j__TPar>. .ctor(<Entity>j__TPar,<BoolProp>j__TPar, <GuidProp>j__TPar,<ByteProp>j__TPar, <ShortProp>j__TPar,<IntProp>j__TPar, <LongProp>j__TPar,<DoubleProp>j__TPar, <FloatProp>j__TPar,<DecimalProp>j__TPar, <EnumProp>j__TPar) |
.ctor(<BoolProp>j__TPar,<ByteProp >j__TPar,<IntProp>j__TPar,<LongProp >j__TPar,<FloatProp>j__TPar,<DoubleProp >j__TPar,<DecimalProp>j__TPar, <DateTimeProp>j__TPar, <DateTimeOffsetProp>j__TPar,<GuidProp >j__TPar,<EnumProp>j__TPar) | 11 | <>f__AnonymousType26<<BoolProp>j__TPar, <ByteProp>j__TPar,<IntProp>j__TPar, <LongProp>j__TPar,<FloatProp>j__TPar, <DoubleProp>j__TPar,<DecimalProp>j__TPar ,<DateTimeProp>j__TPar, <DateTimeOffsetProp>j__TPar,<GuidProp >j__TPar,<EnumProp>j__TPar>..ctor( <BoolProp>j__TPar,<ByteProp>j__TPar, <IntProp>j__TPar,<LongProp>j__TPar, <FloatProp>j__TPar,<DoubleProp>j__TPar, <DecimalProp>j__TPar,<DateTimeProp >j__TPar,<DateTimeOffsetProp>j__TPar, <GuidProp>j__TPar,<EnumProp>j__TPar) |
.ctor(String,String,String,String,String ,String,String,String,String,String ,String) | 11 | System.Data.Entity .ConnectionFactoryConfig .FakeConnectionFactoryManyParams..ctor (String,String,String,String,String ,String,String,String,String,String ,String) |
.ctor(String,String,String,String,String ,String,String,String,String,String ,String) | 11 | System.Data.Entity.Internal .FakeConnectionFactoryManyParams..ctor (String,String,String,String,String ,String,String,String,String,String ,String) |
.ctor(<ByteProp>j__TPar,<ShortProp >j__TPar,<IntProp>j__TPar,<LongProp >j__TPar,<FloatProp>j__TPar,<DoubleProp >j__TPar,<DecimalProp>j__TPar, <DateTimeProp>j__TPar,<GuidProp>j__TPar) | 9 | <>f__AnonymousType22<<ByteProp>j__TPar, <ShortProp>j__TPar,<IntProp>j__TPar, <LongProp>j__TPar,<FloatProp>j__TPar, <DoubleProp>j__TPar,<DecimalProp>j__TPar ,<DateTimeProp>j__TPar,<GuidProp>j__TPar >..ctor(<ByteProp>j__TPar,<ShortProp >j__TPar,<IntProp>j__TPar,<LongProp >j__TPar,<FloatProp>j__TPar,<DoubleProp >j__TPar,<DecimalProp>j__TPar, <DateTimeProp>j__TPar,<GuidProp>j__TPar) |
ParameterTest(Byte[],Nullable<Boolean> ,Nullable<DateTime>,Nullable<Decimal> ,Nullable<Double>,Nullable<Guid> ,ObjectParameter,ObjectParameter) | 8 | FunctionalTests.ProductivityApi .TemplateModels.CsMonsterModel .MonsterModel.ParameterTest(Byte[] ,Nullable<Boolean>,Nullable<DateTime> ,Nullable<Decimal>,Nullable<Double> ,Nullable<Guid>,ObjectParameter ,ObjectParameter) |
ParameterTest(Byte[],Nullable<Boolean> ,Nullable<DateTime>,Nullable<Decimal> ,Nullable<Double>,Nullable<Guid> ,ObjectParameter,ObjectParameter) | 8 | MonsterModel.ParameterTest(Byte[] ,Nullable<Boolean>,Nullable<DateTime> ,Nullable<Decimal>,Nullable<Double> ,Nullable<Guid>,ObjectParameter ,ObjectParameter) |
<List_of_IEntityWrapper_overload_calls_U pdateRelationships>b__1a(ObjectContext ,MergeOption,AssociationSet ,AssociationEndMember,IEntityWrapper ,AssociationEndMember,IList,Boolean) | 8 | System.Data.Entity.Core.Objects .DataClasses.RelatedEndTests+Merge+< >c__DisplayClass24. <List_of_IEntityWrapper_overload_calls_U pdateRelationships>b__1a(ObjectContext ,MergeOption,AssociationSet ,AssociationEndMember,IEntityWrapper ,AssociationEndMember,IList,Boolean) |
.ctor(Int32,String,String,Int32,Int32 ,Int32,Int32,Byte[]) | 8 | System.Data.Entity.Infrastructure .DbPropertyValuesTests+FakeTypeWithProps ..ctor(Int32,String,String,Int32,Int32 ,Int32,Int32,Byte[]) |
CreateParameter(String ,ParameterDirection,Boolean,DbType,Int32 ,Byte,Byte,Object) | 8 | System.Data.Entity.Infrastructure .Interception.DatabaseLogFormatterTests .CreateParameter(String ,ParameterDirection,Boolean,DbType,Int32 ,Byte,Byte,Object) |
.ctor(<a>j__TPar,<b>j__TPar,<c>j__TPar, <e>j__TPar,<f>j__TPar,<g>j__TPar,<h >j__TPar) | 7 | <>f__AnonymousType41<<a>j__TPar,<b >j__TPar,<c>j__TPar,<e>j__TPar,<f >j__TPar,<g>j__TPar,<h>j__TPar>..ctor(<a >j__TPar,<b>j__TPar,<c>j__TPar,<e >j__TPar,<f>j__TPar,<g>j__TPar,<h >j__TPar) |
CreateMigrator<TContext>(Boolean,Boolean ,String,String,Func<DbConnection,String ,HistoryContext>,IEnumerable<Tuple <String,MigrationSqlGenerator>> ,ScaffoldedMigration[]) | 7 | System.Data.Entity.Migrations.DbTestCase .CreateMigrator<TContext>(Boolean ,Boolean,String,String,Func<DbConnection ,String,HistoryContext>,IEnumerable <Tuple<String,MigrationSqlGenerator>> ,ScaffoldedMigration[]) |
CreateMigrationsConfiguration<TContext> (Boolean,Boolean,String,String,Func <DbConnection,String,HistoryContext> ,IEnumerable<Tuple<String ,MigrationSqlGenerator>> ,ScaffoldedMigration[]) | 7 | System.Data.Entity.Migrations.DbTestCase .CreateMigrationsConfiguration<TContext> (Boolean,Boolean,String,String,Func <DbConnection,String,HistoryContext> ,IEnumerable<Tuple<String ,MigrationSqlGenerator>> ,ScaffoldedMigration[]) |
TestCurrentValueNotInModel(DbEntityEntry ,DbPropertyEntry,Type,Func<String> ,String,Boolean,Boolean) | 7 | ProductivityApiTests.PropertyApiTests .TestCurrentValueNotInModel (DbEntityEntry,DbPropertyEntry,Type,Func <String>,String,Boolean,Boolean) |
.ctor(<Key1>j__TPar,<Key2>j__TPar,<Key3 >j__TPar,<Key4>j__TPar,<Key5>j__TPar, <Key6>j__TPar,<Key7>j__TPar) | 7 | <>f__AnonymousType3<<Key1>j__TPar,<Key2 >j__TPar,<Key3>j__TPar,<Key4>j__TPar, <Key5>j__TPar,<Key6>j__TPar,<Key7 >j__TPar>..ctor(<Key1>j__TPar,<Key2 >j__TPar,<Key3>j__TPar,<Key4>j__TPar, <Key5>j__TPar,<Key6>j__TPar,<Key7 >j__TPar) |
Association(String,String ,RelationshipMultiplicity,String,String ,RelationshipMultiplicity,String) | 7 | System.Data.Entity.TestModelBuilder .Association(String,String ,RelationshipMultiplicity,String,String ,RelationshipMultiplicity,String) |
CreateObjectContext(Mock <EntityConnection>,Mock <ObjectStateManager>,Mock <MetadataWorkspace> ,ObjectQueryExecutionPlanFactory ,Translator,ColumnMapFactory,DbCommand) | 7 | System.Data.Entity.Core.Objects .ObjectContextTests.CreateObjectContext (Mock<EntityConnection>,Mock <ObjectStateManager>,Mock <MetadataWorkspace> ,ObjectQueryExecutionPlanFactory ,Translator,ColumnMapFactory,DbCommand) |
TestReadResource(XmlReader,String,String ,Func<XmlReader,Boolean>,Boolean,Func <XmlReader,Boolean>,Boolean) | 7 | System.Data.Entity.SqlServer .SqlProviderManifestTests .TestReadResource(XmlReader,String ,String,Func<XmlReader,Boolean>,Boolean ,Func<XmlReader,Boolean>,Boolean) |
.ctor(<VendorID>j__TPar,<Name>j__TPar, <PreferredVendorStatus>j__TPar, <AccountNumber>j__TPar,<ActiveFlag >j__TPar,<CreditRating>j__TPar) | 6 | <>f__AnonymousType5<<VendorID>j__TPar, <Name>j__TPar,<PreferredVendorStatus >j__TPar,<AccountNumber>j__TPar, <ActiveFlag>j__TPar,<CreditRating >j__TPar>..ctor(<VendorID>j__TPar,<Name >j__TPar,<PreferredVendorStatus>j__TPar, <AccountNumber>j__TPar,<ActiveFlag >j__TPar,<CreditRating>j__TPar) |
ValidateMessage(Exception,Assembly ,String,String,Boolean,Object[]) | 6 | System.Data.Entity .ExceptionTestExtensions.ValidateMessage (Exception,Assembly,String,String ,Boolean,Object[]) |
Execute_commit_failure_test(Action <Action>,Action<Action>,Int32,Boolean ,Boolean,Boolean) | 6 | System.Data.Entity.Interception .CommitFailureTests .Execute_commit_failure_test(Action <Action>,Action<Action>,Int32,Boolean ,Boolean,Boolean) |
.ctor (CommandInterceptionTests+CommandMethod ,DbCommand,Exception,TaskStatus,Boolean ,Object) | 6 | System.Data.Entity.Interception .CommandInterceptionTests+CommandLogItem ..ctor (CommandInterceptionTests+CommandMethod ,DbCommand,Exception,TaskStatus,Boolean ,Object) |
.ctor(String,String,String,String ,Nullable<Int32>,String) | 6 | FunctionalTests.ProductivityApi .TemplateModels.CsAdvancedPatterns .AddressMf..ctor(String,String,String ,String,Nullable<Int32>,String) |
.ctor(String,String,String,String,Int32 ,String) | 6 | AdvancedPatternsVB.AddressMf..ctor (String,String,String,String,Int32 ,String) |
VerifyMethod<T>(Action <InternalSqlSetQuery>,Expression<Action <IInternalSet<T>>>,String,Boolean ,Boolean,Object[]) | 6 | System.Data.Entity.Internal .InternalSqlSetQueryTests.VerifyMethod<T >(Action<InternalSqlSetQuery>,Expression <Action<IInternalSet<T>>>,String,Boolean ,Boolean,Object[]) |
Generate(String,IEnumerable <MigrationOperation>,String,String ,String,String) | 6 | System.Data.Entity.Migrations.Design .MigrationCodeGeneratorTests+DummyCodeGe nerator.Generate(String,IEnumerable <MigrationOperation>,String,String ,String,String) |
Statistics
Stat | # Parameters |
---|---|
Sum: | 251 |
Average: | 8.37 |
Minimum: | 6 |
Maximum: | 15 |
Standard deviation: | 2.58 |
Variance: | 6.63 |
![]() | Rule warning: Methods with too many local variables |
warnif count > 0 from m in JustMyCode.Methods where
m.NbVariables > 15
orderby m.NbVariables descending
select new { m, m.NbVariables }
// Methods where NbVariables > 8 are hard to understand and maintain.
// Methods where NbVariables > 15 are extremely complex
// and should be split in smaller methods.
// See the definition of the Nbvariables metric here
// http://www.ndepend.com/Metrics.aspx#NbvariablesView Code Query or Rule BodyView Code Query or Rule Body
37 methods matched
methods | # Variables | Full Name |
---|---|---|
Seed(F1Context) | 98 | ConcurrencyModel .ConcurrencyModelInitializer.Seed (F1Context) |
Seed(ProviderAgnosticContext) | 63 | System.Data.Entity.TestModels .ProviderAgnosticModel .ProviderAgnosticContextInitializer.Seed (ProviderAgnosticContext) |
Seed(GearsOfWarContext) | 54 | System.Data.Entity.TestModels .GearsOfWarModel .GearsOfWarDatabaseSeeder.Seed (GearsOfWarContext) |
Seed() | 49 | System.Data.Entity.Query .StoredProcedures.StoredProceduresTests .Seed() |
Seed(SimpleModelForLinq) | 44 | SimpleModel .SimpleModelForLinqInitializer.Seed (SimpleModelForLinq) |
MergeWith_merges_properties_of_compatibl e_attributes() | 41 | System.ComponentModel.DataAnnotations .Schema.IndexAttributeTests .MergeWith_merges_properties_of_compatib le_attributes() |
Seed(SpatialNorthwindContext) | 40 | ProductivityApiTests .SpatialNorthwindInitializer.Seed (SpatialNorthwindContext) |
InitializeCreatures() | 32 | System.Data.Entity.TestModels .FantasyModel.FantasyDatabaseSeeder .InitializeCreatures() |
Seed(AdvancedPatternsMasterContext) | 28 | AdvancedPatternsModel .AdvancedPatternsInitializer.Seed (AdvancedPatternsMasterContext) |
InitializeAndPersistPeople(ArubaContext) | 27 | System.Data.Entity.TestModels.ArubaModel .ArubaDatabaseSeeder .InitializeAndPersistPeople(ArubaContext ) |
Configure_mapping_can_process_one_level_ TPH_on_both_sides_of_tree() | 26 | System.Data.Entity.ModelConfiguration .Configuration.ModelConfigurationTests .Configure_mapping_can_process_one_level _TPH_on_both_sides_of_tree() |
Configure_mapping_can_process_two_levels _of_TPH() | 25 | System.Data.Entity.ModelConfiguration .Configuration.ModelConfigurationTests .Configure_mapping_can_process_two_level s_of_TPH() |
IsCompatibleWith_returns_true_when_no_co nflicts() | 24 | System.ComponentModel.DataAnnotations .Schema.IndexAttributeTests .IsCompatibleWith_returns_true_when_no_c onflicts() |
Seed(AllTypeKeysContext) | 23 | AllTypeKeysModel .AllTypeKeysModelInitializer.Seed (AllTypeKeysContext) |
Seed(AdvancedPatternsModelFirstContext) | 22 | FunctionalTests.ProductivityApi .TemplateModels.CsAdvancedPatterns .AdvancedPatternsModelFirstInitializer .Seed(AdvancedPatternsModelFirstContext) |
Can_create_composable_function_import_wi th_entity_type_hierarchy() | 21 | System.Data.Entity.Core.Mapping .FunctionImportMappingComposableTests .Can_create_composable_function_import_w ith_entity_type_hierarchy() |
Can_create_non_composable_function_with_ multiple_results() | 19 | System.Data.Entity.Core.Mapping .FunctionImportMappingNonComposableTests .Can_create_non_composable_function_with _multiple_results() |
Generate_can_map_type_hierarchies_using_ Tph() | 19 | System.Data.Entity.ModelConfiguration .Edm.Services .DatabaseMappingGeneratorTests .Generate_can_map_type_hierarchies_using _Tph() |
TranslateColumnMap_returns_correct_colum ntypes_and_nullablecolumns_for_entity_ty pes() | 18 | System.Data.Entity.Core.Common.Internal .Materialization.TranslatorTests .TranslateColumnMap_returns_correct_colu mntypes_and_nullablecolumns_for_entity_t ypes() |
Returns_rows_affected_when_there_are_res ult_columns() | 18 | System.Data.Entity.Core.Mapping.Update .Internal .FunctionUpdateCommandTests+Execute .Returns_rows_affected_when_there_are_re sult_columns() |
Returns_rows_affected_when_there_are_res ult_columns() | 18 | System.Data.Entity.Core.Mapping.Update .Internal .FunctionUpdateCommandTests+ExecuteAsync .Returns_rows_affected_when_there_are_re sult_columns() |
Configure_mapping_can_process_simple_TPH _mapping() | 18 | System.Data.Entity.ModelConfiguration .Configuration.ModelConfigurationTests .Configure_mapping_can_process_simple_TP H_mapping() |
Can_generate_function_mappings_for_many_ to_many_association_set_mapping() | 18 | System.Data.Entity.ModelConfiguration .Edm.Services .ModificationFunctionMappingGeneratorTes ts .Can_generate_function_mappings_for_many _to_many_association_set_mapping() |
Seed(SimpleLocalDbModelContext) | 17 | SimpleModel .SimpleLocalDbModelInitializer.Seed (SimpleLocalDbModelContext) |
WriteFunctionImportMappingElement_writes _result_mapping_for_non_composable_funct ions_mapped_explicitly_to_ComplexType() | 17 | System.Data.Entity.Core.Metadata.Edm .MslXmlSchemaWriterTests .WriteFunctionImportMappingElement_write s_result_mapping_for_non_composable_func tions_mapped_explicitly_to_ComplexType() |
WriteFunctionImportMappingElement_writes _result_mapping_for_non_composable_funct ions_mapped_explicitly_to_EntityType() | 17 | System.Data.Entity.Core.Metadata.Edm .MslXmlSchemaWriterTests .WriteFunctionImportMappingElement_write s_result_mapping_for_non_composable_func tions_mapped_explicitly_to_EntityType() |
Executes_in_a_transaction_using_Executio nStrategy() | 17 | System.Data.Entity.Core.Objects .ObjectContextTests+Refresh .Executes_in_a_transaction_using_Executi onStrategy() |
Executes_in_a_transaction_using_Executio nStrategy() | 17 | System.Data.Entity.Core.Objects .ObjectContextTests+RefreshAsync .Executes_in_a_transaction_using_Executi onStrategy() |
Can_configure_function_name_and_paramete rs() | 17 | System.Data.Entity.ModelConfiguration .Configuration.Functions .ModificationFunctionConfigurationTests .Can_configure_function_name_and_paramet ers() |
Property_mapping_configurations_are_crea ted_and_stored_correctly() | 17 | System.Data.Entity.ModelConfiguration .Configuration.Mapping .EntityMappingConfigurationTests .Property_mapping_configurations_are_cre ated_and_stored_correctly() |
Index_annotations_are_serialized_to_and_ from_XML() | 16 | System.Data.Entity.Metadata .MetadataAnnotationTests .Index_annotations_are_serialized_to_and _from_XML() |
OnModelCreating(DbModelBuilder) | 16 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_LotsOfIndexStu ff+V1.OnModelCreating(DbModelBuilder) |
OnModelCreating(DbModelBuilder) | 16 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_LotsOfIndexStu ff+V2.OnModelCreating(DbModelBuilder) |
Returns_rows_affected_when_there_is_a_re ader() | 16 | System.Data.Entity.Core.Mapping.Update .Internal .DynamicUpdateCommandTests+Execute .Returns_rows_affected_when_there_is_a_r eader() |
WriteEntityContainerMappingElement_shoul d_write_function_import_elements_mapped_ to_ComplexType() | 16 | System.Data.Entity.Core.Metadata.Edm .MslXmlSchemaWriterTests .WriteEntityContainerMappingElement_shou ld_write_function_import_elements_mapped _to_ComplexType() |
WriteEntityContainerMappingElement_shoul d_write_function_import_elements_mapped_ to_EntityType() | 16 | System.Data.Entity.Core.Metadata.Edm .MslXmlSchemaWriterTests .WriteEntityContainerMappingElement_shou ld_write_function_import_elements_mapped _to_EntityType() |
Configure_mapping_can_process_entity_spl itting() | 16 | System.Data.Entity.ModelConfiguration .Configuration.ModelConfigurationTests .Configure_mapping_can_process_entity_sp litting() |
Statistics
Stat | # Variables |
---|---|
Sum: | 976 |
Average: | 26.38 |
Minimum: | 16 |
Maximum: | 98 |
Standard deviation: | 16.75 |
Variance: | 280.72 |
![]() | Rule warning: Methods with too many overloads |
warnif count > 0 from m in JustMyCode.Methods where
m.NbOverloads > 6 &&
!m.IsOperator // Don't report operator overload
orderby m.NbOverloads descending
select new { m, m.NbOverloads }
// Methods where NbOverloads > 6 might
// be a problem to maintain and provoke higher coupling
// than necessary.
// This might also reveal a potential misused of the
// C# and VB.NET language that since C#3 and VB9 support
// object initialization. This feature helps reducing the number
// of constructors of a class.
// See the definition of the NbOverloads metric here
// http://www.ndepend.com/Metrics.aspx#NbOverloadsView Code Query or Rule BodyView Code Query or Rule Body
159 methods matched
methods | # Overloads | Full Name |
---|---|---|
Visit(DbExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor.Visit(DbExpression) |
Visit(DbAndExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor.Visit(DbAndExpression) |
Visit(DbApplyExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor.Visit(DbApplyExpression) |
Visit(DbArithmeticExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor.Visit(DbArithmeticExpression) |
Visit(DbCaseExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor.Visit(DbCaseExpression) |
Visit(DbCastExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor.Visit(DbCastExpression) |
Visit(DbComparisonExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor.Visit(DbComparisonExpression) |
Visit(DbConstantExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor.Visit(DbConstantExpression) |
Visit(DbCrossJoinExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor.Visit(DbCrossJoinExpression) |
Visit(DbDerefExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor.Visit(DbDerefExpression) |
Visit(DbDistinctExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor.Visit(DbDistinctExpression) |
Visit(DbElementExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor.Visit(DbElementExpression) |
Visit(DbExceptExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor.Visit(DbExceptExpression) |
Visit(DbFilterExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor.Visit(DbFilterExpression) |
Visit(DbFunctionExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor.Visit(DbFunctionExpression) |
Visit(DbEntityRefExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor.Visit(DbEntityRefExpression) |
Visit(DbRefKeyExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor.Visit(DbRefKeyExpression) |
Visit(DbGroupByExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor.Visit(DbGroupByExpression) |
Visit(DbIntersectExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor.Visit(DbIntersectExpression) |
Visit(DbIsEmptyExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor.Visit(DbIsEmptyExpression) |
Visit(DbIsNullExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor.Visit(DbIsNullExpression) |
Visit(DbIsOfExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor.Visit(DbIsOfExpression) |
Visit(DbJoinExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor.Visit(DbJoinExpression) |
Visit(DbLikeExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor.Visit(DbLikeExpression) |
Visit(DbLimitExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor.Visit(DbLimitExpression) |
Visit(DbNewInstanceExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor.Visit(DbNewInstanceExpression) |
Visit(DbNotExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor.Visit(DbNotExpression) |
Visit(DbNullExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor.Visit(DbNullExpression) |
Visit(DbOfTypeExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor.Visit(DbOfTypeExpression) |
Visit(DbOrExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor.Visit(DbOrExpression) |
Visit(DbParameterReferenceExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor.Visit (DbParameterReferenceExpression) |
Visit(DbProjectExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor.Visit(DbProjectExpression) |
Visit(DbPropertyExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor.Visit(DbPropertyExpression) |
Visit(DbQuantifierExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor.Visit(DbQuantifierExpression) |
Visit(DbRefExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor.Visit(DbRefExpression) |
Visit(DbRelationshipNavigationExpression ) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor.Visit (DbRelationshipNavigationExpression) |
Visit(DbScanExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor.Visit(DbScanExpression) |
Visit(DbSkipExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor.Visit(DbSkipExpression) |
Visit(DbSortExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor.Visit(DbSortExpression) |
Visit(DbTreatExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor.Visit(DbTreatExpression) |
Visit(DbUnionAllExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor.Visit(DbUnionAllExpression) |
Visit(DbVariableReferenceExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor.Visit (DbVariableReferenceExpression) |
Visit(DbExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor<T>.Visit(DbExpression) |
Visit(DbAndExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor<T>.Visit(DbAndExpression) |
Visit(DbApplyExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor<T>.Visit(DbApplyExpression) |
Visit(DbArithmeticExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor<T>.Visit (DbArithmeticExpression) |
Visit(DbCaseExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor<T>.Visit(DbCaseExpression) |
Visit(DbCastExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor<T>.Visit(DbCastExpression) |
Visit(DbComparisonExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor<T>.Visit (DbComparisonExpression) |
Visit(DbConstantExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor<T>.Visit(DbConstantExpression) |
Visit(DbCrossJoinExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor<T>.Visit(DbCrossJoinExpression ) |
Visit(DbDerefExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor<T>.Visit(DbDerefExpression) |
Visit(DbDistinctExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor<T>.Visit(DbDistinctExpression) |
Visit(DbElementExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor<T>.Visit(DbElementExpression) |
Visit(DbExceptExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor<T>.Visit(DbExceptExpression) |
Visit(DbFilterExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor<T>.Visit(DbFilterExpression) |
Visit(DbFunctionExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor<T>.Visit(DbFunctionExpression) |
Visit(DbEntityRefExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor<T>.Visit(DbEntityRefExpression ) |
Visit(DbRefKeyExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor<T>.Visit(DbRefKeyExpression) |
Visit(DbGroupByExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor<T>.Visit(DbGroupByExpression) |
Visit(DbIntersectExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor<T>.Visit(DbIntersectExpression ) |
Visit(DbIsEmptyExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor<T>.Visit(DbIsEmptyExpression) |
Visit(DbIsNullExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor<T>.Visit(DbIsNullExpression) |
Visit(DbIsOfExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor<T>.Visit(DbIsOfExpression) |
Visit(DbJoinExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor<T>.Visit(DbJoinExpression) |
Visit(DbLikeExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor<T>.Visit(DbLikeExpression) |
Visit(DbLimitExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor<T>.Visit(DbLimitExpression) |
Visit(DbNewInstanceExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor<T>.Visit (DbNewInstanceExpression) |
Visit(DbNotExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor<T>.Visit(DbNotExpression) |
Visit(DbNullExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor<T>.Visit(DbNullExpression) |
Visit(DbOfTypeExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor<T>.Visit(DbOfTypeExpression) |
Visit(DbOrExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor<T>.Visit(DbOrExpression) |
Visit(DbParameterReferenceExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor<T>.Visit (DbParameterReferenceExpression) |
Visit(DbProjectExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor<T>.Visit(DbProjectExpression) |
Visit(DbPropertyExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor<T>.Visit(DbPropertyExpression) |
Visit(DbQuantifierExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor<T>.Visit (DbQuantifierExpression) |
Visit(DbRefExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor<T>.Visit(DbRefExpression) |
Visit(DbRelationshipNavigationExpression ) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor<T>.Visit (DbRelationshipNavigationExpression) |
Visit(DbScanExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor<T>.Visit(DbScanExpression) |
Visit(DbSkipExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor<T>.Visit(DbSkipExpression) |
Visit(DbSortExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor<T>.Visit(DbSortExpression) |
Visit(DbTreatExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor<T>.Visit(DbTreatExpression) |
Visit(DbUnionAllExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor<T>.Visit(DbUnionAllExpression) |
Visit(DbVariableReferenceExpression) | 42 | System.Data.Entity.Core.Common .CommandTrees .DbExpressionVisiorTests+DummyDbExpressi onVisitor<T>.Visit (DbVariableReferenceExpression) |
GetArgs(Object) | 12 | System.Data.Entity .AnnotationAttributeBuilder.GetArgs (Object) |
GetArgs(KeyAttribute) | 12 | System.Data.Entity .AnnotationAttributeBuilder.GetArgs (KeyAttribute) |
GetArgs(RequiredAttribute) | 12 | System.Data.Entity .AnnotationAttributeBuilder.GetArgs (RequiredAttribute) |
GetArgs(TimestampAttribute) | 12 | System.Data.Entity .AnnotationAttributeBuilder.GetArgs (TimestampAttribute) |
GetArgs(ConcurrencyCheckAttribute) | 12 | System.Data.Entity .AnnotationAttributeBuilder.GetArgs (ConcurrencyCheckAttribute) |
GetArgs(StringLengthAttribute) | 12 | System.Data.Entity .AnnotationAttributeBuilder.GetArgs (StringLengthAttribute) |
GetArgs(MaxLengthAttribute) | 12 | System.Data.Entity .AnnotationAttributeBuilder.GetArgs (MaxLengthAttribute) |
GetArgs(DatabaseGeneratedAttribute) | 12 | System.Data.Entity .AnnotationAttributeBuilder.GetArgs (DatabaseGeneratedAttribute) |
GetArgs(EdmEntityTypeAttribute) | 12 | System.Data.Entity .AnnotationAttributeBuilder.GetArgs (EdmEntityTypeAttribute) |
GetArgs(EdmSchemaAttribute) | 12 | System.Data.Entity .AnnotationAttributeBuilder.GetArgs (EdmSchemaAttribute) |
GetArgs (EdmRelationshipNavigationPropertyAttrib ute) | 12 | System.Data.Entity .AnnotationAttributeBuilder.GetArgs (EdmRelationshipNavigationPropertyAttrib ute) |
GetArgs(EdmComplexPropertyAttribute) | 12 | System.Data.Entity .AnnotationAttributeBuilder.GetArgs (EdmComplexPropertyAttribute) |
.ctor() | 7 | SimpleModel.SimpleModelContext..ctor() |
.ctor(DbCompiledModel) | 7 | SimpleModel.SimpleModelContext..ctor (DbCompiledModel) |
.ctor(String) | 7 | SimpleModel.SimpleModelContext..ctor (String) |
.ctor(String,DbCompiledModel) | 7 | SimpleModel.SimpleModelContext..ctor (String,DbCompiledModel) |
Statistics
Stat | # Overloads |
---|---|
Sum: | 4 113 |
Average: | 25.87 |
Minimum: | 7 |
Maximum: | 42 |
Standard deviation: | 17.12 |
Variance: | 293.06 |
![]() | Rule warning: Types with too many methods |
warnif count > 0 from t in JustMyCode.Types where
t.Methods.Count() > 20
orderby t.Methods.Count() descending
select new { t, t.InstanceMethods, t.StaticMethods }
// Types where Methods.Count() > 20 might be hard to
// understand and maintain
// but there might be cases where it is relevant
// to have a high number of methods.
// For example, the System.Windows.Forms.DataGridView
// standard class has more than 1000 methods.
View Code Query or Rule BodyView Code Query or Rule Body
271 types matched
types | InstanceMethods | StaticMethods | Full Name |
---|---|---|---|
LinqTests | 1577 methods | 297 methods | ProductivityApiTests.LinqTests |
BasicMappingScenarioTests | 207 methods | 447 methods | FunctionalTests .BasicMappingScenarioTests |
PropertyApiTests | 475 methods | 78 methods | ProductivityApiTests.PropertyApiTests |
DbExpressionBuilderTests | 308 methods | 243 methods | System.Data.Entity.Core.Common .CommandTrees.DbExpressionBuilderTests |
FindTests | 249 methods | 182 methods | ProductivityApiTests.FindTests |
QueryableExtensionsTests | 6 methods | 384 methods | System.Data.Entity .QueryableExtensionsTests |
DbPropertyValuesTests | 204 methods | 170 methods | ProductivityApiTests .DbPropertyValuesTests |
DbContextTests | 237 methods | 51 methods | ProductivityApiTests.DbContextTests |
DbSetTests | 234 methods | 34 methods | ProductivityApiTests.DbSetTests |
AssociationScenarioTests | 141 methods | 86 methods | FunctionalTests.AssociationScenarioTests |
DbRawSqlQueryTests+AsIDbAsyncEnumerable | 21 methods | 194 methods | System.Data.Entity.Infrastructure .DbRawSqlQueryTests+AsIDbAsyncEnumerable |
EdmModelDifferTests | 105 methods | 83 methods | System.Data.Entity.Migrations .Infrastructure.EdmModelDifferTests |
FunctionsScenarioTests+ModificationFunct ions+ConfigurationApis | 24 methods | 155 methods | FunctionalTests .FunctionsScenarioTests+ModificationFunc tions+ConfigurationApis |
FunctionsScenarioTests+ModificationFunct ions+LightweightConventions | 23 methods | 141 methods | FunctionalTests .FunctionsScenarioTests+ModificationFunc tions+LightweightConventions |
InheritanceScenarioTests | 58 methods | 106 methods | FunctionalTests.InheritanceScenarioTests |
ConcurrencyTests | 79 methods | 84 methods | ProductivityApiTests.ConcurrencyTests |
DataAnnotationScenarioTests | 54 methods | 89 methods | FunctionalTests .DataAnnotationScenarioTests |
ConventionsScenarioTests+LightweightType Conventions | 38 methods | 97 methods | FunctionalTests .ConventionsScenarioTests+LightweightTyp eConventions |
DbSqlQueryTests | 74 methods | 59 methods | ProductivityApiTests.DbSqlQueryTests |
InMemoryNonGenericDbSetTests | 37 methods | 82 methods | System.Data.Entity.TestDoubles .InMemoryNonGenericDbSetTests |
DbContextInfoTests | 98 methods | 21 methods | System.Data.Entity.Infrastructure .DbContextInfoTests |
DatabindingTests | 64 methods | 52 methods | ProductivityApiTests.DatabindingTests |
InternalDispatcherTests+Dispatch | 24 methods | 92 methods | System.Data.Entity.Infrastructure .Interception .InternalDispatcherTests+Dispatch |
ConventionTypeConfigurationTests | 56 methods | 59 methods | System.Data.Entity.ModelConfiguration .Configuration .ConventionTypeConfigurationTests |
SqlServerMigrationSqlGeneratorTests | 59 methods | 54 methods | System.Data.Entity.SqlServer .SqlServerMigrationSqlGeneratorTests |
DatabaseTests | 88 methods | 22 methods | ProductivityApiTests.DatabaseTests |
ConventionsScenarioTests+LightweightProp ertyConventions | 22 methods | 86 methods | FunctionalTests .ConventionsScenarioTests+LightweightPro pertyConventions |
EnumOCMappingTests | 39 methods | 66 methods | System.Data.Entity.MetadataMapping .EnumOCMappingTests |
AdvancedMappingScenarioTests | 25 methods | 72 methods | FunctionalTests .AdvancedMappingScenarioTests |
PrimitivePropertyConfigurationTests | 93 methods | 3 methods | System.Data.Entity.ModelConfiguration .Configuration .PrimitivePropertyConfigurationTests |
SqlSpatialServicesTests | 14 methods | 81 methods | System.Data.Entity.SqlServer .SqlSpatialServicesTests |
ConnectionFactoryConfigTests | 75 methods | 19 methods | System.Data.Entity .ConnectionFactoryConfig .ConnectionFactoryConfigTests |
DbGeometryTests | 12 methods | 82 methods | System.Data.Entity.Spatial .DbGeometryTests |
Product | 92 methods | 0 method | FunctionalTests.Model.Product |
TransactionsTests | 91 methods | 0 method | System.Data.Entity.Objects .TransactionsTests |
InMemoryDbSetTests | 39 methods | 49 methods | System.Data.Entity.TestDoubles .InMemoryDbSetTests |
TypeWithALotOfProperties | 87 methods | 0 method | System.Data.Entity .TypeWithALotOfProperties |
SalesOrderHeader | 86 methods | 0 method | FunctionalTests.Model.SalesOrderHeader |
DbModelBuilderTests | 76 methods | 9 methods | System.Data.Entity.ModelConfiguration .DbModelBuilderTests |
DatabaseExistsInInitializerTests | 76 methods | 8 methods | System.Data.Entity.SqlServer .DatabaseExistsInInitializerTests |
IDbAsyncEnumerableExtensionsTests | 36 methods | 48 methods | System.Data.Entity .IDbAsyncEnumerableExtensionsTests |
MetadataEnumTests | 56 methods | 25 methods | System.Data.Entity.Metadata .MetadataEnumTests |
DbConnectionFactoryTests | 49 methods | 31 methods | System.Data.Entity.Infrastructure .DbConnectionFactoryTests |
ValidationTests | 63 methods | 16 methods | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .ValidationTests |
CommitFailureTests | 34 methods | 44 methods | System.Data.Entity.Interception .CommitFailureTests |
DbPropertyValuesTests | 68 methods | 9 methods | System.Data.Entity.Infrastructure .DbPropertyValuesTests |
ConventionsConfigurationTests | 65 methods | 11 methods | System.Data.Entity.ModelConfiguration .Configuration .ConventionsConfigurationTests |
InvalidTypeTests | 44 methods | 31 methods | ProductivityApiTests.InvalidTypeTests |
DbEntityEntryTests+Property | 75 methods | 0 method | System.Data.Entity.Infrastructure .DbEntityEntryTests+Property |
ArubaAllTypes | 74 methods | 0 method | System.Data.Entity.TestModels.ArubaModel .ArubaAllTypes |
EntityValidatorBuilderTests | 32 methods | 42 methods | System.Data.Entity.Validation .EntityValidatorBuilderTests |
DbEntityEntryTests | 57 methods | 14 methods | ProductivityApiTests.DbEntityEntryTests |
DbGeographyTests | 12 methods | 59 methods | System.Data.Entity.Spatial .DbGeographyTests |
DatabaseInitializationTests | 62 methods | 8 methods | ProductivityApiTests .DatabaseInitializationTests |
MonsterModel | 69 methods | 0 method | FunctionalTests.ProductivityApi .TemplateModels.CsMonsterModel .MonsterModel |
MonsterModel | 69 methods | 0 method | MonsterModel |
DatabindingTests | 65 methods | 4 methods | System.Data.Entity.DatabindingTests |
ConventionPrimitivePropertyConfiguration Tests | 67 methods | 1 method | System.Data.Entity.ModelConfiguration .Configuration .ConventionPrimitivePropertyConfiguratio nTests |
GroupByOptimizationTests | 15 methods | 51 methods | System.Data.Entity.Query.LinqToEntities .GroupByOptimizationTests |
DbEntityEntryTests+ComplexProperty | 66 methods | 0 method | System.Data.Entity.Infrastructure .DbEntityEntryTests+ComplexProperty |
PropertyConfigurationScenarioTests | 34 methods | 30 methods | FunctionalTests .PropertyConfigurationScenarioTests |
DbMigrationTests | 52 methods | 12 methods | System.Data.Entity.Migrations .DbMigrationTests |
SqlCeMigrationSqlGeneratorTests | 35 methods | 28 methods | System.Data.Entity.SqlServerCompact .SqlCeMigrationSqlGeneratorTests |
ExpressionConverterTests | 34 methods | 28 methods | System.Data.Entity.Core.Objects.ELinq .ExpressionConverterTests |
BufferedDataReaderTests | 32 methods | 29 methods | System.Data.Entity.Core.Objects.Internal .BufferedDataReaderTests |
BridgeDataReaderTests | 13 methods | 48 methods | System.Data.Entity.Core.Query .ResultAssembly.BridgeDataReaderTests |
MetadataAnnotationTests | 5 methods | 55 methods | System.Data.Entity.Metadata .MetadataAnnotationTests |
MultiThreadingTests+ContextForSetDiscove ry | 60 methods | 0 method | System.Data.Entity .MultiThreadingTests+ContextForSetDiscov ery |
Employee | 59 methods | 0 method | FunctionalTests.Model.Employee |
ConnectionTests | 58 methods | 1 method | ProductivityApiTests.ConnectionTests |
DatabaseInitializerTests | 53 methods | 6 methods | System.Data.Entity .DatabaseInitializerTests |
TypeExtensionsTests+GetDeclaredMethod | 23 methods | 36 methods | System.Data.Entity.Utilities .TypeExtensionsTests+GetDeclaredMethod |
ReflectionUtilTests | 2 methods | 57 methods | System.Data.Entity.Core.Objects.ELinq .ReflectionUtilTests |
ModelConfigurationTests | 40 methods | 19 methods | System.Data.Entity.ModelConfiguration .Configuration.ModelConfigurationTests |
DbContextTests | 46 methods | 13 methods | ProductivityApiUnitTests.DbContextTests |
TypeCasts | 58 methods | 0 method | System.Data.Entity.Migrations.TypeCasts |
SqlProviderManifestTests | 26 methods | 32 methods | System.Data.Entity.SqlServer .SqlProviderManifestTests |
TypeExtensions | 0 method | 57 methods | System.Data.Entity.Functionals.Utilities .TypeExtensions |
TypeExtensions | 0 method | 57 methods | System.Data.Entity.Functionals.Utilities .TypeExtensions |
IncludeTests | 48 methods | 9 methods | ProductivityApiTests.IncludeTests |
UnimplementedDbSetTests | 34 methods | 22 methods | System.Data.Entity.TestDoubles .UnimplementedDbSetTests |
GroupAggregateTests | 27 methods | 29 methods | System.Data.Entity.Query .GroupAggregateTests |
StringConcatTests+SomeEntity | 56 methods | 0 method | System.Data.Entity.Core.Objects.ELinq .StringConcatTests+SomeEntity |
OrderByLiftingTests | 11 methods | 43 methods | System.Data.Entity.Query.LinqToEntities .OrderByLiftingTests |
MetadataCollectionTests+MyBigEntity | 54 methods | 0 method | System.Data.Entity.Metadata .MetadataCollectionTests+MyBigEntity |
DbFunctionScenarios+DateTimeFunctions | 54 methods | 0 method | FunctionalTests.ProductivityApi .DbFunctionScenarios+DateTimeFunctions |
DbFunctionScenarios+EntityFunctionsProxi es+DateTimeFunctions | 54 methods | 0 method | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+DateTimeFunctions |
TemplateTests | 49 methods | 4 methods | ProductivityApiTests.TemplateTests |
DbExecutionStrategyTests+ExecuteAsync | 27 methods | 26 methods | System.Data.Entity.Infrastructure .DbExecutionStrategyTests+ExecuteAsync |
MetadataCollectionTests+MyContext | 52 methods | 0 method | System.Data.Entity.Metadata .MetadataCollectionTests+MyContext |
InternalConnectionTests | 50 methods | 2 methods | System.Data.Entity.Internal .InternalConnectionTests |
NamespaceAndNestingTests | 25 methods | 26 methods | ProductivityApiTests .NamespaceAndNestingTests |
DbContextTestsForSqlCe | 50 methods | 1 method | ProductivityApiTests .DbContextTestsForSqlCe |
DbEntityEntryTests+Member | 51 methods | 0 method | System.Data.Entity.Infrastructure .DbEntityEntryTests+Member |
HistoryRepositoryTests | 44 methods | 7 methods | System.Data.Entity.Migrations.History .HistoryRepositoryTests |
ModelAssertions | 0 method | 50 methods | System.Data.Entity.ModelAssertions |
ToStringTests+SomeEntity | 50 methods | 0 method | System.Data.Entity.Core.Objects.ELinq .ToStringTests+SomeEntity |
DisposeTests | 34 methods | 16 methods | ProductivityApiTests.DisposeTests |
TemplateTests | 47 methods | 3 methods | TemplateTests |
UnimplementedNonGenericDbSetTests | 31 methods | 18 methods | System.Data.Entity.TestDoubles .UnimplementedNonGenericDbSetTests |
Statistics
Stat | InstanceMethods | StaticMethods |
---|---|---|
Sum: | 0 | 0 |
Average: | 0 | 0 |
Minimum: | 0 | 0 |
Maximum: | 0 | 0 |
Standard deviation: | 0 | 0 |
Variance: | 0 | 0 |
![]() | Rule warning: Types with too many fields |
warnif count > 0 from t in JustMyCode.Types where
t.Fields.Count() > 20 &&
!t.IsEnumeration
orderby t.Fields.Count() descending
select new { t, t.InstanceFields, t.StaticFields, t.SizeOfInst }
// Types where Fields.Count() > 20 and not IsEnumeration
// might be hard to understand and maintain
// but there might be cases where it is relevant
// to have a high number of fields.
// For example, the System.Windows.Forms.Control
// standard class has more than 200 fields.View Code Query or Rule BodyView Code Query or Rule Body
92 types matched
types | InstanceFields | StaticFields | Size of instance | Full Name |
---|---|---|---|---|
BasicMappingScenarioTests | 0 field | 447 fields | 4 | FunctionalTests .BasicMappingScenarioTests |
QueryableExtensionsTests | 0 field | 376 fields | 0 | System.Data.Entity .QueryableExtensionsTests |
LinqTests | 0 field | 294 fields | 4 | ProductivityApiTests.LinqTests |
DbExpressionBuilderTests | 13 fields | 243 fields | 52 | System.Data.Entity.Core.Common .CommandTrees.DbExpressionBuilderTests |
DbRawSqlQueryTests+AsIDbAsyncEnumerable | 0 field | 190 fields | 0 | System.Data.Entity.Infrastructure .DbRawSqlQueryTests+AsIDbAsyncEnumerable |
FindTests | 0 field | 182 fields | 4 | ProductivityApiTests.FindTests |
DbPropertyValuesTests | 0 field | 170 fields | 4 | ProductivityApiTests .DbPropertyValuesTests |
FunctionsScenarioTests+ModificationFunct ions+ConfigurationApis | 0 field | 155 fields | 4 | FunctionalTests .FunctionsScenarioTests+ModificationFunc tions+ConfigurationApis |
FunctionsScenarioTests+ModificationFunct ions+LightweightConventions | 0 field | 141 fields | 4 | FunctionalTests .FunctionsScenarioTests+ModificationFunc tions+LightweightConventions |
InheritanceScenarioTests | 0 field | 106 fields | 4 | FunctionalTests.InheritanceScenarioTests |
ConventionsScenarioTests+LightweightType Conventions | 0 field | 97 fields | 4 | FunctionalTests .ConventionsScenarioTests+LightweightTyp eConventions |
InternalDispatcherTests+Dispatch | 0 field | 92 fields | 4 | System.Data.Entity.Infrastructure .Interception .InternalDispatcherTests+Dispatch |
DataAnnotationScenarioTests | 0 field | 89 fields | 4 | FunctionalTests .DataAnnotationScenarioTests |
AssociationScenarioTests | 0 field | 86 fields | 4 | FunctionalTests.AssociationScenarioTests |
ConventionsScenarioTests+LightweightProp ertyConventions | 0 field | 86 fields | 4 | FunctionalTests .ConventionsScenarioTests+LightweightPro pertyConventions |
ConcurrencyTests | 0 field | 86 fields | 4 | ProductivityApiTests.ConcurrencyTests |
DbGeometryTests | 0 field | 82 fields | 0 | System.Data.Entity.Spatial .DbGeometryTests |
SqlSpatialServicesTests | 0 field | 81 fields | 0 | System.Data.Entity.SqlServer .SqlSpatialServicesTests |
InMemoryNonGenericDbSetTests | 0 field | 80 fields | 4 | System.Data.Entity.TestDoubles .InMemoryNonGenericDbSetTests |
EdmModelDifferTests | 0 field | 80 fields | 28 | System.Data.Entity.Migrations .Infrastructure.EdmModelDifferTests |
PropertyApiTests | 0 field | 77 fields | 4 | ProductivityApiTests.PropertyApiTests |
AdvancedMappingScenarioTests | 0 field | 72 fields | 4 | FunctionalTests .AdvancedMappingScenarioTests |
DatabindingTests | 0 field | 60 fields | 4 | ProductivityApiTests.DatabindingTests |
DbGeographyTests | 0 field | 59 fields | 0 | System.Data.Entity.Spatial .DbGeographyTests |
ConventionTypeConfigurationTests | 0 field | 59 fields | 0 | System.Data.Entity.ModelConfiguration .Configuration .ConventionTypeConfigurationTests |
ReflectionUtilTests | 0 field | 57 fields | 0 | System.Data.Entity.Core.Objects.ELinq .ReflectionUtilTests |
DbSqlQueryTests | 0 field | 55 fields | 4 | ProductivityApiTests.DbSqlQueryTests |
MetadataAnnotationTests | 0 field | 54 fields | 4 | System.Data.Entity.Metadata .MetadataAnnotationTests |
SqlServerMigrationSqlGeneratorTests | 0 field | 52 fields | 0 | System.Data.Entity.SqlServer .SqlServerMigrationSqlGeneratorTests |
GroupByOptimizationTests | 0 field | 51 fields | 4 | System.Data.Entity.Query.LinqToEntities .GroupByOptimizationTests |
DbContextTests | 0 field | 49 fields | 4 | ProductivityApiTests.DbContextTests |
BridgeDataReaderTests | 0 field | 48 fields | 0 | System.Data.Entity.Core.Query .ResultAssembly.BridgeDataReaderTests |
InMemoryDbSetTests | 0 field | 47 fields | 4 | System.Data.Entity.TestDoubles .InMemoryDbSetTests |
EnumOCMappingTests | 0 field | 46 fields | 4 | System.Data.Entity.MetadataMapping .EnumOCMappingTests |
IDbAsyncEnumerableExtensionsTests | 0 field | 45 fields | 0 | System.Data.Entity .IDbAsyncEnumerableExtensionsTests |
CommitFailureTests | 0 field | 44 fields | 4 | System.Data.Entity.Interception .CommitFailureTests |
OrderByLiftingTests | 0 field | 43 fields | 0 | System.Data.Entity.Query.LinqToEntities .OrderByLiftingTests |
BasicExpressionVisitorTests | 0 field | 43 fields | 0 | System.Data.Entity.Core.Common .CommandTrees .BasicExpressionVisitorTests |
DbExpressionRebinderTests | 0 field | 43 fields | 0 | System.Data.Entity.Core.Common .CommandTrees.DbExpressionRebinderTests |
DefaultExpressionVisitorTests | 0 field | 43 fields | 0 | System.Data.Entity.Core.Common .CommandTrees .DefaultExpressionVisitorTests |
EntityValidatorBuilderTests | 0 field | 42 fields | 0 | System.Data.Entity.Validation .EntityValidatorBuilderTests |
Product | 39 fields | 0 field | 191 | FunctionalTests.Model.Product |
SalesOrderHeader | 39 fields | 0 field | 221 | FunctionalTests.Model.SalesOrderHeader |
TypeExtensionsTests+GetDeclaredMethod | 0 field | 38 fields | 0 | System.Data.Entity.Utilities .TypeExtensionsTests+GetDeclaredMethod |
ArubaAllTypes | 37 fields | 0 field | 231 | System.Data.Entity.TestModels.ArubaModel .ArubaAllTypes |
TypeWithALotOfProperties | 37 fields | 0 field | 140 | System.Data.Entity .TypeWithALotOfProperties |
EntityDataReaderTests+DelegationToStoreR eader | 0 field | 36 fields | 0 | System.Data.Entity.Core.EntityClient .EntityDataReaderTests+DelegationToStore Reader |
DbSetTests | 0 field | 34 fields | 4 | ProductivityApiTests.DbSetTests |
InvalidTypeTests | 0 field | 33 fields | 4 | ProductivityApiTests.InvalidTypeTests |
SqlGeneratorTests+SkipLimit | 16 fields | 15 fields | 68 | System.Data.Entity.Query .SqlGeneratorTests+SkipLimit |
MonsterModel | 31 fields | 0 field | 128 | FunctionalTests.ProductivityApi .TemplateModels.CsMonsterModel .MonsterModel |
MonsterModel | 31 fields | 0 field | 128 | MonsterModel |
TypeExtensionsTests+GetProperties | 0 field | 31 fields | 0 | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties |
PropertyConfigurationScenarioTests | 0 field | 30 fields | 4 | FunctionalTests .PropertyConfigurationScenarioTests |
Team | 18 fields | 12 fields | 73 | ConcurrencyModel.Team |
GroupAggregateTests | 0 field | 30 fields | 4 | System.Data.Entity.Query .GroupAggregateTests |
MultiThreadingTests+ContextForSetDiscove ry | 30 fields | 0 field | 124 | System.Data.Entity .MultiThreadingTests+ContextForSetDiscov ery |
DbConnectionFactoryTests | 0 field | 30 fields | 4 | System.Data.Entity.Infrastructure .DbConnectionFactoryTests |
TypeCasts | 29 fields | 0 field | 213 | System.Data.Entity.Migrations.TypeCasts |
MetadataWorkspaceTests+Constructors | 0 field | 29 fields | 4 | System.Data.Entity.Core.Metadata.Edm .MetadataWorkspaceTests+Constructors |
SqlProviderManifestTests | 0 field | 29 fields | 0 | System.Data.Entity.SqlServer .SqlProviderManifestTests |
StringConcatTests+SomeEntity | 28 fields | 0 field | 163 | System.Data.Entity.Core.Objects.ELinq .StringConcatTests+SomeEntity |
ExpressionConverterTests | 0 field | 28 fields | 0 | System.Data.Entity.Core.Objects.ELinq .ExpressionConverterTests |
BufferedDataReaderTests | 0 field | 28 fields | 4 | System.Data.Entity.Core.Objects.Internal .BufferedDataReaderTests |
SqlCeMigrationSqlGeneratorTests | 0 field | 28 fields | 0 | System.Data.Entity.SqlServerCompact .SqlCeMigrationSqlGeneratorTests |
MetadataCollectionTests+MyBigEntity | 27 fields | 0 field | 108 | System.Data.Entity.Metadata .MetadataCollectionTests+MyBigEntity |
EntityKeyTests+Constructors | 0 field | 27 fields | 0 | System.Data.Entity.Core .EntityKeyTests+Constructors |
Employee | 26 fields | 0 field | 116 | FunctionalTests.Model.Employee |
FunctionsTests+StringFunctions | 0 field | 26 fields | 0 | System.Data.Entity.Query.LinqToEntities .FunctionsTests+StringFunctions |
IncludeTests | 0 field | 26 fields | 0 | System.Data.Entity.Query.LinqToEntities .IncludeTests |
MetadataCollectionTests+MyContext | 26 fields | 0 field | 108 | System.Data.Entity.Metadata .MetadataCollectionTests+MyContext |
TypeFinderTests | 0 field | 26 fields | 4 | System.Data.Entity.Utilities .TypeFinderTests |
DbExecutionStrategyTests+Execute | 0 field | 26 fields | 0 | System.Data.Entity.Infrastructure .DbExecutionStrategyTests+Execute |
DbExecutionStrategyTests+ExecuteAsync | 0 field | 26 fields | 0 | System.Data.Entity.Infrastructure .DbExecutionStrategyTests+ExecuteAsync |
ConventionsScenarioTests+ConventionTests | 0 field | 25 fields | 4 | FunctionalTests .ConventionsScenarioTests+ConventionTest s |
ToStringTests+SomeEntity | 25 fields | 0 field | 147 | System.Data.Entity.Core.Objects.ELinq .ToStringTests+SomeEntity |
NamespaceAndNestingTests | 0 field | 25 fields | 4 | ProductivityApiTests .NamespaceAndNestingTests |
AutoAndGenerateScenarios_LotsOfIndexStuf f | 0 field | 24 fields | 43 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_LotsOfIndexStu ff |
DefaultValueScenarios | 0 field | 24 fields | 28 | System.Data.Entity.Migrations .DefaultValueScenarios |
MetadataEnumTests | 1 field | 22 fields | 8 | System.Data.Entity.Metadata .MetadataEnumTests |
ConnectionFactoryConfigTests | 0 field | 23 fields | 4 | System.Data.Entity .ConnectionFactoryConfig .ConnectionFactoryConfigTests |
InheritanceScenarioTests+CoverBusiness | 22 fields | 0 field | 88 | FunctionalTests .InheritanceScenarioTests+CoverBusiness |
AllTypes | 22 fields | 0 field | 120 | System.Data.Entity.TestModels .ProviderAgnosticModel.AllTypes |
UnimplementedDbSetTests | 0 field | 22 fields | 4 | System.Data.Entity.TestDoubles .UnimplementedDbSetTests |
OrderByLiftingTests | 5 fields | 17 fields | 24 | System.Data.Entity.Query.LinqToEntities .OrderByLiftingTests |
DatabaseTests | 0 field | 22 fields | 4 | ProductivityApiTests.DatabaseTests |
DbCollectionEntryTests | 0 field | 22 fields | 0 | System.Data.Entity.Infrastructure .DbCollectionEntryTests |
DbReferenceEntryTests | 0 field | 22 fields | 0 | System.Data.Entity.Infrastructure .DbReferenceEntryTests |
FunctionsScenarioTests+ModificationFunct ions+MetadataGeneration | 0 field | 21 fields | 4 | FunctionalTests .FunctionsScenarioTests+ModificationFunc tions+MetadataGeneration |
ArubaAllCeTypes | 21 fields | 0 field | 133 | System.Data.Entity.TestModels .ArubaCeModel.ArubaAllCeTypes |
DbConfigurationTests+SetExecutionStrateg y | 0 field | 21 fields | 0 | System.Data.Entity .DbConfigurationTests+SetExecutionStrate gy |
DbContextInfoTests | 0 field | 21 fields | 4 | System.Data.Entity.Infrastructure .DbContextInfoTests |
Statistics
Stat | InstanceFields | StaticFields | Size of instance |
---|---|---|---|
Sum: | 0 | 0 | 2 839 |
Average: | 0 | 0 | 30.86 |
Minimum: | 0 | 0 | 0 |
Maximum: | 0 | 0 | 231 |
Standard deviation: | 0 | 0 | 57.7 |
Variance: | 0 | 0 | 3 329 |
![]() | Rule warning: Types with poor cohesion |
warnif count > 0 from t in JustMyCode.Types where
(t.LCOM > 0.8 || t.LCOMHS > 0.95) &&
t.NbFields > 10 &&
t.NbMethods >10
orderby t.LCOM descending, t.LCOMHS descending
select new { t, t.LCOM, t.LCOMHS,
t.NbMethods, t.NbFields }
// Types where LCOM > 0.8 and NbFields > 10
// and NbMethods >10 might be problematic.
// However, it is very hard to avoid such
// non-cohesive types. The LCOMHS metric
// is often considered as more efficient to
// detect non-cohesive types.
// See the definition of the LCOM metric here
// http://www.ndepend.com/Metrics.aspx#LCOMView Code Query or Rule BodyView Code Query or Rule Body
26 types matched
types | Lack of Cohesion Of Methods (LCOM) | LCOM Henderson-Sellers (LCOMHS) | # Methods | # Fields | Full Name |
---|---|---|---|---|---|
Product | 0.98 | 0.99 | 93 | 39 | FunctionalTests.Model.Product |
MonsterModel | 0.97 | 0.99 | 70 | 31 | MonsterModel |
SalesOrderHeader | 0.97 | 0.98 | 87 | 39 | FunctionalTests.Model.SalesOrderHeader |
DbExpressionBuilderTests | 0.97 | 0.97 | 552 | 256 | System.Data.Entity.Core.Common .CommandTrees.DbExpressionBuilderTests |
Employee | 0.97 | 0.98 | 60 | 26 | FunctionalTests.Model.Employee |
ValidationTests | 0.96 | 0.98 | 80 | 14 | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .ValidationTests |
Contact | 0.96 | 0.98 | 47 | 20 | FunctionalTests.Model.Contact |
PurchaseOrderHeader | 0.95 | 0.97 | 39 | 17 | FunctionalTests.Model .PurchaseOrderHeader |
SalesTerritory | 0.94 | 0.97 | 36 | 15 | FunctionalTests.Model.SalesTerritory |
SalesPerson | 0.94 | 0.97 | 37 | 16 | FunctionalTests.Model.SalesPerson |
Address | 0.94 | 0.97 | 35 | 14 | FunctionalTests.Model.Address |
Team | 0.94 | 0.97 | 35 | 30 | ConcurrencyModel.Team |
ProductVendor | 0.94 | 0.97 | 31 | 14 | FunctionalTests.Model.ProductVendor |
WorkOrderRouting | 0.94 | 0.97 | 31 | 14 | FunctionalTests.Model.WorkOrderRouting |
Customer | 0.93 | 0.97 | 30 | 13 | FunctionalTests.Model.Customer |
PurchaseOrderDetail | 0.93 | 0.96 | 29 | 13 | FunctionalTests.Model .PurchaseOrderDetail |
SalesOrderDetail | 0.93 | 0.96 | 29 | 13 | FunctionalTests.Model.SalesOrderDetail |
StateProvince | 0.93 | 0.96 | 29 | 12 | FunctionalTests.Model.StateProvince |
Vendor | 0.93 | 0.96 | 29 | 12 | FunctionalTests.Model.Vendor |
WorkOrder | 0.93 | 0.96 | 30 | 14 | FunctionalTests.Model.WorkOrder |
SpecialOffer | 0.92 | 0.96 | 26 | 12 | FunctionalTests.Model.SpecialOffer |
ProductMm | 0.92 | 0.96 | 25 | 12 | ProductMm |
Document | 0.92 | 0.96 | 24 | 11 | FunctionalTests.Model.Document |
BillOfMaterials | 0.91 | 0.95 | 27 | 13 | FunctionalTests.Model.BillOfMaterials |
SqlGeneratorTests+SkipLimit | 0.91 | 0.95 | 37 | 31 | System.Data.Entity.Query .SqlGeneratorTests+SkipLimit |
MetadataEnumTests | 0.81 | 0.83 | 83 | 23 | System.Data.Entity.Metadata .MetadataEnumTests |
Statistics
Stat | Lack of Cohesion Of Methods (LCOM) | LCOM Henderson-Sellers (LCOMHS) | # Methods | # Fields |
---|---|---|---|---|
Sum: | 24.35 | 25.04 | 1 631 | 724 |
Average: | 0.94 | 0.96 | 62.73 | 27.85 |
Minimum: | 0.81 | 0.83 | 24 | 11 |
Maximum: | 0.98 | 0.99 | 552 | 256 |
Standard deviation: | 0.031 | 0.029 | 100.06 | 46.4 |
Variance: | 0.00096 | 0.00085 | 10 011 | 2 152 |
193
Object Oriented Design |
|
![]() | Rule warning: Base class should not use derivatives |
warnif count > 0
from baseClass in JustMyCode.Types
where baseClass.IsClass && baseClass.NbChildren > 0 // <-- for optimization!
let derivedClassesUsed = baseClass.DerivedTypes.UsedBy(baseClass)
where derivedClassesUsed.Count() > 0
select new { baseClass, derivedClassesUsed }View Code Query or Rule BodyView Code Query or Rule Body
13 types matched
types | derivedClassesUsed | Full Name |
---|---|---|
AssociationScenarioTests+DependentSelfRe f | 1 type | FunctionalTests .AssociationScenarioTests+DependentSelfR ef |
AssociationScenarioTests+SelfRefInherite dBase | 1 type | FunctionalTests .AssociationScenarioTests+SelfRefInherit edBase |
AssociationScenarioTests+Repro150565_Bas eDependent | 1 type | FunctionalTests .AssociationScenarioTests+Repro150565_Ba seDependent |
BasicMappingScenarioTests+Repro135563_2_ BaseDependent | 1 type | FunctionalTests .BasicMappingScenarioTests+Repro135563_2 _BaseDependent |
BasicMappingScenarioTests+Repro135563_3_ BaseDependent | 1 type | FunctionalTests .BasicMappingScenarioTests+Repro135563_3 _BaseDependent |
DataAnnotationScenarioTests+AbstractReco rd | 1 type | FunctionalTests .DataAnnotationScenarioTests+AbstractRec ord |
InheritanceScenarioTests+TheBaseClass | 1 type | FunctionalTests .InheritanceScenarioTests+TheBaseClass |
BaseDependent | 1 type | FunctionalTests.Bug336706.BaseDependent |
DatabaseExistsInInitializerTests+ExistsC ontext | 1 type | System.Data.Entity.SqlServer .DatabaseExistsInInitializerTests+Exists Context |
DatabaseExistsTests+ExistsContext | 1 type | System.Data.Entity.SqlServer .DatabaseExistsTests+ExistsContext |
ProductMm | 1 type | FunctionalTests.ProductivityApi .TemplateModels.CsMonsterModel.ProductMm |
ProductMm | 1 type | ProductMm |
MetadataCacheTests | 3 types | System.Data.Entity.Core.Metadata.Edm .MetadataCacheTests |
Statistics
Stat | derivedClassesUsed |
---|---|
Sum: | 0 |
Average: | 0 |
Minimum: | 0 |
Maximum: | 0 |
Standard deviation: | 0 |
Variance: | 0 |
![]() | Rule warning: Class shouldn't be too deep in inheritance tree |
warnif count > 0 from t in JustMyCode.Types
where t.IsClass
let baseClasses = t.BaseClasses.ExceptThirdParty()
// Warn for classes with 3 or more base classes.
// Notice that we don't count third-party classes
// because this rule concerns your code design,
// not third-party libraries consumed design.
where baseClasses.Count() >= 3
select new { t, baseClasses,
// The metric value DepthOfInheritance takes account
// of third-party base classes
t.DepthOfInheritance }
// Branches too long in the derivation should be avoided.
// See the definition of the DepthOfInheritance metric here
// http://www.ndepend.com/Metrics.aspx#DIT
View Code Query or Rule BodyView Code Query or Rule Body
79 types matched
types | baseClasses | Depth of inheritance | Full Name |
---|---|---|---|
UniqueConstraintInfo | 3 types | 4 | System.Data.Entity.Migrations .UniqueConstraintInfo |
PrimaryKeyConstraintInfo | 3 types | 4 | System.Data.Entity.Migrations .PrimaryKeyConstraintInfo |
ReferentialConstraintInfo | 3 types | 4 | System.Data.Entity.Migrations .ReferentialConstraintInfo |
ShopContext_v4 | 3 types | 5 | System.Data.Entity.Migrations .ShopContext_v4 |
ShopContext_v6 | 3 types | 5 | System.Data.Entity.Migrations .ShopContext_v6 |
BasicMappingScenarioTests+DCrazy | 3 types | 4 | FunctionalTests .BasicMappingScenarioTests+DCrazy |
BasicMappingScenarioTests+ECrazy | 4 types | 5 | FunctionalTests .BasicMappingScenarioTests+ECrazy |
BasicMappingScenarioTests+XCrazy | 4 types | 5 | FunctionalTests .BasicMappingScenarioTests+XCrazy |
BasicMappingScenarioTests+CodePlex1646_R epro2+User | 3 types | 4 | FunctionalTests .BasicMappingScenarioTests+CodePlex1646_ Repro2+User |
Issue1776+Swaption | 3 types | 4 | FunctionalTests.Issue1776+Swaption |
AutoAndGenerateScenarios_Empty | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_Empty |
AutoAndGenerateScenarios_AddTable | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AddTable |
AutoAndGenerateScenarios_AddTableWithGui dKey | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AddTableWithGu idKey |
AutoAndGenerateScenarios_RemoveTable | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_RemoveTable |
AutoAndGenerateScenarios_ChangeTableSche ma | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_ChangeTableSch ema |
AutoAndGenerateScenarios_ChangeTableName | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_ChangeTableNam e |
AutoAndGenerateScenarios_ChangeTablePrim aryKey | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_ChangeTablePri maryKey |
AutoAndGenerateScenarios_CreateTableWith Annotations | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_CreateTableWit hAnnotations |
AutoAndGenerateScenarios_CreateTableWith ColumnAnnotations | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_CreateTableWit hColumnAnnotations |
AutoAndGenerateScenarios_DropTableWithCo lumnAnnotations | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_DropTableWithC olumnAnnotations |
AutoAndGenerateScenarios_DropTableWithAn notations | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_DropTableWithA nnotations |
AutoAndGenerateScenarios_AlterTableAnnot ations | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterTableAnno tations |
AutoAndGenerateScenarios_RenameTableWith Annotations | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_RenameTableWit hAnnotations |
AutoAndGenerateScenarios_AddForeignKey | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AddForeignKey |
AutoAndGenerateScenarios_AddPromotedFore ignKey | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AddPromotedFor eignKey |
AutoAndGenerateScenarios_RemoveForeignKe y | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_RemoveForeignK ey |
AutoAndGenerateScenarios_ChangeForeignKe yOnDeleteAction | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_ChangeForeignK eyOnDeleteAction |
AutoAndGenerateScenarios_AddColumn | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AddColumn |
AutoAndGenerateScenarios_AddColumnNvarch arMax | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AddColumnNvarc harMax |
AutoAndGenerateScenarios_AddColumnNvarch arMax64 | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AddColumnNvarc harMax64 |
AutoAndGenerateScenarios_AddColumnNvarch ar | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AddColumnNvarc har |
AutoAndGenerateScenarios_AddColumnNvarch arMaxLength | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AddColumnNvarc harMaxLength |
AutoAndGenerateScenarios_AddColumnNvarch ar64 | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AddColumnNvarc har64 |
AutoAndGenerateScenarios_RemoveColumn | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_RemoveColumn |
AutoAndGenerateScenarios_AlterColumnName | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnNam e |
AutoAndGenerateScenarios_AlterSpatialCol umnNames | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterSpatialCo lumnNames |
AutoAndGenerateScenarios_AlterColumnType <TContextV1,TContextV2> | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnTyp e<TContextV1,TContextV2> |
AutoAndGenerateScenarios_AlterColumnType _Decimal15ToDouble | 4 types | 6 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnTyp e_Decimal15ToDouble |
AutoAndGenerateScenarios_AlterColumnType _SingleToDecimal16 | 4 types | 6 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnTyp e_SingleToDecimal16 |
AutoAndGenerateScenarios_AlterColumnType _SingleToDouble | 4 types | 6 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnTyp e_SingleToDouble |
AutoAndGenerateScenarios_AlterColumnType _SingleToDecimal11 | 4 types | 6 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnTyp e_SingleToDecimal11 |
AutoAndGenerateScenarios_AlterColumnType _Decimal6ToDouble | 4 types | 6 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnTyp e_Decimal6ToDouble |
AutoAndGenerateScenarios_AlterColumnType _Int32ToInt64 | 4 types | 6 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnTyp e_Int32ToInt64 |
AutoAndGenerateScenarios_AlterColumnType _Int16ToInt64 | 4 types | 6 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnTyp e_Int16ToInt64 |
AutoAndGenerateScenarios_AlterColumnType _Int16ToInt32 | 4 types | 6 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnTyp e_Int16ToInt32 |
AutoAndGenerateScenarios_AlterColumnType _ByteToInt64 | 4 types | 6 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnTyp e_ByteToInt64 |
AutoAndGenerateScenarios_AlterColumnType _ByteToInt32 | 4 types | 6 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnTyp e_ByteToInt32 |
AutoAndGenerateScenarios_AlterColumnType _ByteToInt16 | 4 types | 6 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnTyp e_ByteToInt16 |
AutoAndGenerateScenarios_AlterColumnFixe dLength | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnFix edLength |
AutoAndGenerateScenarios_AlterColumnMaxL ength<TContextV1,TContextV2> | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnMax Length<TContextV1,TContextV2> |
AutoAndGenerateScenarios_AlterColumn256_ Max | 4 types | 6 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumn256 _Max |
AutoAndGenerateScenarios_AlterColumnMaxL ength_Max | 4 types | 6 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnMax Length_Max |
AutoAndGenerateScenarios_AlterColumnMaxL ength_512 | 4 types | 6 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnMax Length_512 |
AutoAndGenerateScenarios_AlterColumnNull able | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnNul lable |
AutoAndGenerateScenarios_AlterColumnPrec ision | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnPre cision |
AutoAndGenerateScenarios_AlterColumnScal e | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnSca le |
AutoAndGenerateScenarios_AlterColumnUnic ode | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnUni code |
AutoAndGenerateScenarios_AlterColumnChan gedAnnotations | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnCha ngedAnnotations |
AutoAndGenerateScenarios_AlterColumnAdde dAnnotations | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnAdd edAnnotations |
AutoAndGenerateScenarios_AlterColumnRemo vedAnnotations | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnRem ovedAnnotations |
AutoAndGenerateScenarios_AlterColumnEver ythingAnnotations | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnEve rythingAnnotations |
AutoAndGenerateScenarios_AlterColumnCust omAnnotation | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnCus tomAnnotation |
AutoAndGenerateScenarios_AddColumnWithAn notations | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AddColumnWithA nnotations |
AutoAndGenerateScenarios_DropColumnWithA nnotations | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_DropColumnWith Annotations |
AutoAndGenerateScenarios_AddIndex | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AddIndex |
AutoAndGenerateScenarios_ChangeIndex | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_ChangeIndex |
AutoAndGenerateScenarios_DropIndex | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_DropIndex |
AutoAndGenerateScenarios_LotsOfIndexStuf f | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_LotsOfIndexStu ff |
AutoAndGenerateScenarios_ImplicitIndexCh anges | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_ImplicitIndexC hanges |
AutoAndGenerateScenarios_DefaultNameInde xes | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_DefaultNameInd exes |
AutoAndGenerateScenarios_RenameProcedure | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_RenameProcedur e |
AutoAndGenerateScenarios_AlterProcedure | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterProcedure |
AutoAndGenerateScenarios_MoveProcedure | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_MoveProcedure |
AutoAndGenerateScenarios_MoveProcedure_M anyToMany | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_MoveProcedure_ ManyToMany |
AutoAndGenerateScenarios_RenameProcedure _ManyToMany | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_RenameProcedur e_ManyToMany |
AutoAndGenerateScenarios_AlterProcedure_ ManyToMany | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterProcedure _ManyToMany |
Omnivore | 3 types | 4 | System.Data.Entity.TestModels .FantasyModel.Omnivore |
BinaryPropertyConfigurationTests | 3 types | 5 | System.Data.Entity.ModelConfiguration .Configuration.Properties.Primitive .BinaryPropertyConfigurationTests |
StringPropertyConfigurationTests | 3 types | 5 | System.Data.Entity.ModelConfiguration .Configuration.Properties.Primitive .StringPropertyConfigurationTests |
Statistics
Stat | baseClasses | Depth of inheritance |
---|---|---|
Sum: | 0 | 402 |
Average: | 0 | 5.09 |
Minimum: | 0 | 4 |
Maximum: | 0 | 6 |
Standard deviation: | 0 | 0.51 |
Variance: | 0 | 0.26 |
![]() | Rule warning: Class with no descendant should be sealed if possible |
warnif count > 0 from t in JustMyCode.Types where
t.IsClass &&
t.NbChildren ==0 &&
!t.IsSealed &&
!t.IsStatic
// && !t.IsPublic <-- You might want to add this condition
// if you are developing a framework
// with classes that are intended to be
// sub-classed by your clients.
orderby t.NbLinesOfCode descending
select new { t, t.NbLinesOfCode }View Code Query or Rule BodyView Code Query or Rule Body
3,766 types matched
types | # lines of code (LOC) | Full Name |
---|---|---|
LinqTests | 2 065 | ProductivityApiTests.LinqTests |
PropertyApiTests | 1 635 | ProductivityApiTests.PropertyApiTests |
DbExpressionBuilderTests | 1 353 | System.Data.Entity.Core.Common .CommandTrees.DbExpressionBuilderTests |
EdmModelDifferTests | 1 325 | System.Data.Entity.Migrations .Infrastructure.EdmModelDifferTests |
DbSetTests | 1 057 | ProductivityApiTests.DbSetTests |
DbContextTests | 969 | ProductivityApiTests.DbContextTests |
DbPropertyValuesTests | 916 | ProductivityApiTests .DbPropertyValuesTests |
QueryableExtensionsTests | 881 | System.Data.Entity .QueryableExtensionsTests |
TransactionsTests | 706 | System.Data.Entity.Objects .TransactionsTests |
FindTests | 693 | ProductivityApiTests.FindTests |
ValidationTests | 534 | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .ValidationTests |
DatabaseInitializationTests | 466 | ProductivityApiTests .DatabaseInitializationTests |
InternalDispatcherTests+Dispatch | 439 | System.Data.Entity.Infrastructure .Interception .InternalDispatcherTests+Dispatch |
ConventionTypeConfigurationTests | 420 | System.Data.Entity.ModelConfiguration .Configuration .ConventionTypeConfigurationTests |
FunctionsScenarioTests+ModificationFunct ions+ConfigurationApis | 399 | FunctionalTests .FunctionsScenarioTests+ModificationFunc tions+ConfigurationApis |
DbRawSqlQueryTests+AsIDbAsyncEnumerable | 385 | System.Data.Entity.Infrastructure .DbRawSqlQueryTests+AsIDbAsyncEnumerable |
ConcurrencyTests | 382 | ProductivityApiTests.ConcurrencyTests |
DbPropertyValuesTests | 379 | System.Data.Entity.Infrastructure .DbPropertyValuesTests |
DatabindingTests | 361 | ProductivityApiTests.DatabindingTests |
TemplateTests | 356 | TemplateTests |
SqlServerMigrationSqlGeneratorTests | 350 | System.Data.Entity.SqlServer .SqlServerMigrationSqlGeneratorTests |
FunctionsScenarioTests+ModificationFunct ions+LightweightConventions | 349 | FunctionalTests .FunctionsScenarioTests+ModificationFunc tions+LightweightConventions |
ConventionPrimitivePropertyConfiguration Tests | 341 | System.Data.Entity.ModelConfiguration .Configuration .ConventionPrimitivePropertyConfiguratio nTests |
DbMigrationTests | 331 | System.Data.Entity.Migrations .DbMigrationTests |
DatabaseTests | 322 | ProductivityApiTests.DatabaseTests |
HistoryRepositoryTests | 321 | System.Data.Entity.Migrations.History .HistoryRepositoryTests |
MetadataEnumTests | 315 | System.Data.Entity.Metadata .MetadataEnumTests |
ConnectionFactoryConfigTests | 314 | System.Data.Entity .ConnectionFactoryConfig .ConnectionFactoryConfigTests |
StreamingTests | 311 | ProductivityApiTests.StreamingTests |
SerializationScenarios | 300 | System.Data.Entity.Objects .SerializationScenarios |
DbContextInfoTests | 291 | System.Data.Entity.Infrastructure .DbContextInfoTests |
DatabindingTests | 290 | System.Data.Entity.DatabindingTests |
DbSqlQueryTests | 288 | ProductivityApiTests.DbSqlQueryTests |
ModificationCommandTreeGeneratorTests | 280 | System.Data.Entity.Migrations .Infrastructure .ModificationCommandTreeGeneratorTests |
DbEntityEntryTests | 264 | ProductivityApiTests.DbEntityEntryTests |
DbEntityEntryTests+Property | 258 | System.Data.Entity.Infrastructure .DbEntityEntryTests+Property |
InternalConnectionTests | 258 | System.Data.Entity.Internal .InternalConnectionTests |
CommitFailureTests | 257 | System.Data.Entity.Interception .CommitFailureTests |
DbCommandDispatcherTests+AsyncNonQuery | 257 | System.Data.Entity.Infrastructure .Interception .DbCommandDispatcherTests+AsyncNonQuery |
BasicMigrationScenarios | 252 | System.Data.Entity.Migrations .BasicMigrationScenarios |
EntityConnectionTests+Open | 247 | System.Data.Entity.Core.EntityClient .EntityConnectionTests+Open |
EnumOCMappingTests | 245 | System.Data.Entity.MetadataMapping .EnumOCMappingTests |
LimitExpressionTests | 245 | PlanCompilerTests.LimitExpressionTests |
TypeExtensionsTests+GetProperties | 244 | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties |
EntityValidatorBuilderTests | 244 | System.Data.Entity.Validation .EntityValidatorBuilderTests |
EntityConnectionTests+OpenAsync | 238 | System.Data.Entity.Core.EntityClient .EntityConnectionTests+OpenAsync |
MetadataCollectionTests | 234 | System.Data.Entity.Core.Metadata.Edm .MetadataCollectionTests |
BufferedDataReaderTests | 233 | System.Data.Entity.Core.Objects.Internal .BufferedDataReaderTests |
DatabaseInitializerTests | 231 | System.Data.Entity .DatabaseInitializerTests |
SqlCeMigrationSqlGeneratorTests | 224 | System.Data.Entity.SqlServerCompact .SqlCeMigrationSqlGeneratorTests |
ConnectionTests | 219 | ProductivityApiTests.ConnectionTests |
IDbAsyncEnumerableExtensionsTests | 218 | System.Data.Entity .IDbAsyncEnumerableExtensionsTests |
DbEntityEntryTests+Member | 218 | System.Data.Entity.Infrastructure .DbEntityEntryTests+Member |
TemplateTests | 213 | ProductivityApiTests.TemplateTests |
GroupAggregateTests | 210 | System.Data.Entity.Query .GroupAggregateTests |
Employee | 205 | FunctionalTests.Model.Employee |
SalesOrderHeader | 205 | FunctionalTests.Model.SalesOrderHeader |
UpdateTests | 205 | System.Data.Entity.Update.UpdateTests |
SqlSpatialServicesTests | 201 | System.Data.Entity.SqlServer .SqlSpatialServicesTests |
MockableDbSetTests | 200 | System.Data.Entity.TestDoubles .MockableDbSetTests |
CSharpMigrationCodeGeneratorTests | 197 | System.Data.Entity.Migrations.Design .CSharpMigrationCodeGeneratorTests |
VisualBasicMigrationCodeGeneratorTests | 197 | System.Data.Entity.Migrations.Design .VisualBasicMigrationCodeGeneratorTests |
LazyLoadingTests | 196 | System.Data.Entity.Objects .LazyLoadingTests |
DbContextTestsForSqlCe | 196 | ProductivityApiTests .DbContextTestsForSqlCe |
MockableNonGenericDbSetTests | 189 | System.Data.Entity.TestDoubles .MockableNonGenericDbSetTests |
DbContextTests | 188 | ProductivityApiUnitTests.DbContextTests |
NullSemanticsTests | 187 | System.Data.Entity.Query .NullSemanticsTests |
DetectChangesTests | 185 | ProductivityApiTests.DetectChangesTests |
DbGeometryTests | 185 | System.Data.Entity.Spatial .DbGeometryTests |
ModificationFunctionConfigurationTests | 180 | System.Data.Entity.ModelConfiguration .Configuration.Functions .ModificationFunctionConfigurationTests |
DynamicAssembly | 178 | System.Data.Entity.DynamicAssembly |
SqlCeCanonicalFunctionsTests | 178 | System.Data.Entity.Query .SqlCeCanonicalFunctionsTests |
StringConcatTests | 177 | System.Data.Entity.Core.Objects.ELinq .StringConcatTests |
MslXmlSchemaWriterTests | 175 | System.Data.Entity.Core.Metadata.Edm .MslXmlSchemaWriterTests |
TypeExtensionsTests+GetDeclaredMethod | 173 | System.Data.Entity.Utilities .TypeExtensionsTests+GetDeclaredMethod |
DbEntityEntryTests+ComplexProperty | 172 | System.Data.Entity.Infrastructure .DbEntityEntryTests+ComplexProperty |
InMemoryNonGenericDbSetTests | 171 | System.Data.Entity.TestDoubles .InMemoryNonGenericDbSetTests |
SpatialEdmFunctionsTests | 171 | System.Data.Entity.Core.Common .CommandTrees.SpatialEdmFunctionsTests |
DatabaseExistsInInitializerTests | 170 | System.Data.Entity.SqlServer .DatabaseExistsInInitializerTests |
GroupByOptimizationTests | 169 | System.Data.Entity.Query.LinqToEntities .GroupByOptimizationTests |
EdmPropertyTests | 168 | System.Data.Entity.Core.Metadata.Edm .EdmPropertyTests |
DbFunctionScenarios+DateTimeFunctions | 166 | FunctionalTests.ProductivityApi .DbFunctionScenarios+DateTimeFunctions |
DbFunctionScenarios+EntityFunctionsProxi es+DateTimeFunctions | 166 | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+DateTimeFunctions |
MultiThreadingTests | 166 | System.Data.Entity.MultiThreadingTests |
BridgeDataReaderTests | 165 | System.Data.Entity.Core.Query .ResultAssembly.BridgeDataReaderTests |
NamespaceAndNestingTests | 164 | ProductivityApiTests .NamespaceAndNestingTests |
TranslatorTests | 164 | System.Data.Entity.Core.Common.Internal .Materialization.TranslatorTests |
ModelDefinedFunctionTests | 163 | System.Data.Entity.Query .ModelDefinedFunctionTests |
SimpleScenariosForLocalDb | 163 | ProductivityApiTests .SimpleScenariosForLocalDb |
MetadataOptimizationTests | 161 | System.Data.Entity.Core.Metadata.Edm .MetadataOptimizationTests |
IndexAttributeTests | 160 | System.ComponentModel.DataAnnotations .Schema.IndexAttributeTests |
Contact | 156 | FunctionalTests.Model.Contact |
EdmSerializationVisitorTests | 155 | System.Data.Entity.Core.Metadata.Edm .EdmSerializationVisitorTests |
DbCommandDispatcherTests+NonQuery | 155 | System.Data.Entity.Infrastructure .Interception .DbCommandDispatcherTests+NonQuery |
ScriptingScenarios | 151 | System.Data.Entity.Migrations .ScriptingScenarios |
DbConnectionFactoryTests | 151 | System.Data.Entity.Infrastructure .DbConnectionFactoryTests |
TimeoutTests | 150 | System.Data.Entity.ProductivityApi .TimeoutTests |
IncludeTests | 150 | ProductivityApiTests.IncludeTests |
DbCommandDispatcherTests+AsyncScalar | 149 | System.Data.Entity.Infrastructure .Interception .DbCommandDispatcherTests+AsyncScalar |
Address | 147 | FunctionalTests.Model.Address |
Statistics
Stat | # lines of code (LOC) |
---|---|
Sum: | 72 186 |
Average: | 19.17 |
Minimum: | 0 |
Maximum: | 2 065 |
Standard deviation: | 76.07 |
Variance: | 5 786 |
![]() | Rule warning: Overrides of Method() should call base.Method() |
// Overrides of Method() should refine the behavior of base.Method().
// If base.Method() is not called, the base behavior is not refined but it is replaced.
// Violations of this rule are a sign of design flaw,
// especially if the design provides valid reasons
// that advocates that the base behavior must be replaced and not refined.
//
// Discussions on this topic are available here:
// http://stackoverflow.com/questions/1107022/should-i-call-the-base-class-implementation-when-overriding-a-method-in-c-sharp
// http://stackoverflow.com/questions/2945147/make-sure-base-method-gets-called-in-c-sharp
warnif count > 0
from t in Types // Take account of third-party types too
// Bother only classes with descendant
where t.IsClass && t.NbChildren > 0
from mBase in t.InstanceMethods
where mBase.IsVirtual &&
!mBase.IsThirdParty &&
!mBase.IsAbstract &&
!mBase.IsExplicitInterfaceImpl
from mOverride in mBase.OverridesDirectDerived
where !mOverride.IsUsing(mBase)
select new { mOverride, shouldCall = mBase, definedInBaseClass = mBase.ParentType }
View Code Query or Rule BodyView Code Query or Rule Body
89 methods matched
methods | shouldCall | definedInBaseClass | Full Name |
---|---|---|---|
OnModelCreating(DbModelBuilder) | OnModelCreating(DbModelBuilder) | TestBase | FunctionalTests.EndToEndFunctionsTest .OnModelCreating(DbModelBuilder) |
EnumerateTestCommands(IMethodInfo) | EnumerateTestCommands(IMethodInfo) | ExtendedFactAttribute | System.Data.Entity.Migrations .MigrationsTheoryAttribute .EnumerateTestCommands(IMethodInfo) |
OnModelCreating(DbModelBuilder) | OnModelCreating(DbModelBuilder) | ShopContext_v1 | System.Data.Entity.Migrations .ShopContext_v2.OnModelCreating (DbModelBuilder) |
Abstract_in_middle_of_hierarchy_with_TPC () | Abstract_in_middle_of_hierarchy_with_TPC() | BasicMappingScenarioTests | FunctionalTests .FunctionsScenarioTests+BasicMapping .Abstract_in_middle_of_hierarchy_with_TP C() |
get_VirtualBaseClassProperty() | get_VirtualBaseClassProperty() | BasicMappingScenarioTests+BaseEntity | FunctionalTests .BasicMappingScenarioTests+Unit .get_VirtualBaseClassProperty() |
set_VirtualBaseClassProperty(String) | set_VirtualBaseClassProperty(String) | BasicMappingScenarioTests+BaseEntity | FunctionalTests .BasicMappingScenarioTests+Unit .set_VirtualBaseClassProperty(String) |
get_VirtualBaseClassProperty() | get_VirtualBaseClassProperty() | DataAnnotationScenarioTests+BaseEntity | FunctionalTests .DataAnnotationScenarioTests+Unit .get_VirtualBaseClassProperty() |
set_VirtualBaseClassProperty(String) | set_VirtualBaseClassProperty(String) | DataAnnotationScenarioTests+BaseEntity | FunctionalTests .DataAnnotationScenarioTests+Unit .set_VirtualBaseClassProperty(String) |
SetDropCreateIfNotExists() | SetDropCreateIfNotExists() | DatabaseExistsInInitializerTests+ExistsContext | System.Data.Entity.SqlServer .DatabaseExistsInInitializerTests+Exists Context<T>.SetDropCreateIfNotExists() |
SetDropCreateIfModelChanges() | SetDropCreateIfModelChanges() | DatabaseExistsInInitializerTests+ExistsContext | System.Data.Entity.SqlServer .DatabaseExistsInInitializerTests+Exists Context<T>.SetDropCreateIfModelChanges() |
ModifyMigrationsConfiguration (DbMigrationsConfiguration) | ModifyMigrationsConfiguration(DbMigrationsConfiguration) | DbTestCase | System.Data.Entity.Migrations .AlterTableAnnotationsScenarios .ModifyMigrationsConfiguration (DbMigrationsConfiguration) |
ModifyMigrationsConfiguration (DbMigrationsConfiguration) | ModifyMigrationsConfiguration(DbMigrationsConfiguration) | DbTestCase | System.Data.Entity.Migrations .AddColumnScenarios .ModifyMigrationsConfiguration (DbMigrationsConfiguration) |
ModifyMigrationsConfiguration (DbMigrationsConfiguration) | ModifyMigrationsConfiguration(DbMigrationsConfiguration) | DbTestCase | System.Data.Entity.Migrations .AlterColumnScenarios .ModifyMigrationsConfiguration (DbMigrationsConfiguration) |
ModifyMigrationsConfiguration (DbMigrationsConfiguration) | ModifyMigrationsConfiguration(DbMigrationsConfiguration) | DbTestCase | System.Data.Entity.Migrations .CreateTableScenarios .ModifyMigrationsConfiguration (DbMigrationsConfiguration) |
VerifyMigrationsException (MigrationsException) | VerifyMigrationsException(MigrationsException) | AutoAndGenerateTestCase<TContextV1,TContextV2> | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterProcedure .VerifyMigrationsException (MigrationsException) |
VerifyUpOperations(IEnumerable <MigrationOperation>) | VerifyUpOperations(IEnumerable<MigrationOperation>) | AutoAndGenerateScenarios_AlterColumnMaxLength<TContextV1,TContextV2> | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnMax Length_Max.VerifyUpOperations (IEnumerable<MigrationOperation>) |
VerifyDownOperations(IEnumerable <MigrationOperation>) | VerifyDownOperations(IEnumerable<MigrationOperation>) | AutoAndGenerateScenarios_AlterColumnMaxLength<TContextV1,TContextV2> | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnMax Length_Max.VerifyDownOperations (IEnumerable<MigrationOperation>) |
OnModelCreating(DbModelBuilder) | OnModelCreating(DbModelBuilder) | ConnectionTests+OnModelConnectionContext<TContext> | ProductivityApiTests .ConnectionTests+OnModelConnectionContex tWithOpenAndClose.OnModelCreating (DbModelBuilder) |
get_EntityHashCode() | get_EntityHashCode() | BaseTypeForLinq | SimpleModel.OrderForLinq .get_EntityHashCode() |
get_Name() | get_Name() | EntityWithBuiltInValidationAttributes | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .EntityWithAllKindsOfValidation.get_Name () |
set_Name(String) | set_Name(String) | EntityWithBuiltInValidationAttributes | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .EntityWithAllKindsOfValidation.set_Name (String) |
get_AmountLaundered() | get_AmountLaundered() | MemberInfoExtensionsTests+GetCustomAttributes+Saul | System.Data.Entity.Utilities .MemberInfoExtensionsTests+GetCustomAttr ibutes+BetterCall.get_AmountLaundered() |
set_AmountLaundered(Decimal) | set_AmountLaundered(Decimal) | MemberInfoExtensionsTests+GetCustomAttributes+Saul | System.Data.Entity.Utilities .MemberInfoExtensionsTests+GetCustomAttr ibutes+BetterCall.set_AmountLaundered (Decimal) |
Launder(Decimal) | Launder(Decimal) | MemberInfoExtensionsTests+GetCustomAttributes+Saul | System.Data.Entity.Utilities .MemberInfoExtensionsTests+GetCustomAttr ibutes+BetterCall.Launder(Decimal) |
get_Mary() | get_Mary() | PropertyInfoExtensionsTests+GetPropertiesInHierarchy+Ee | System.Data.Entity.Utilities .PropertyInfoExtensionsTests+GetProperti esInHierarchy+Cher.get_Mary() |
set_Mary(Int32) | set_Mary(Int32) | PropertyInfoExtensionsTests+GetPropertiesInHierarchy+Ee | System.Data.Entity.Utilities .PropertyInfoExtensionsTests+GetProperti esInHierarchy+Cher.set_Mary(Int32) |
get_Poppins() | get_Poppins() | PropertyInfoExtensionsTests+GetPropertiesInHierarchy+Ee | System.Data.Entity.Utilities .PropertyInfoExtensionsTests+GetProperti esInHierarchy+Cher.get_Poppins() |
set_Poppins(Int32) | set_Poppins(Int32) | PropertyInfoExtensionsTests+GetPropertiesInHierarchy+Ee | System.Data.Entity.Utilities .PropertyInfoExtensionsTests+GetProperti esInHierarchy+Cher.set_Poppins(Int32) |
get_Bert() | get_Bert() | PropertyInfoExtensionsTests+GetPropertiesInHierarchy+Ee | System.Data.Entity.Utilities .PropertyInfoExtensionsTests+GetProperti esInHierarchy+Cher.get_Bert() |
set_Bert(Int32) | set_Bert(Int32) | PropertyInfoExtensionsTests+GetPropertiesInHierarchy+Ee | System.Data.Entity.Utilities .PropertyInfoExtensionsTests+GetProperti esInHierarchy+Cher.set_Bert(Int32) |
get_Banks() | get_Banks() | PropertyInfoExtensionsTests+GetPropertiesInHierarchy+Ee | System.Data.Entity.Utilities .PropertyInfoExtensionsTests+GetProperti esInHierarchy+Cher.get_Banks() |
set_AdmiralBoom(Int32) | set_AdmiralBoom(Int32) | PropertyInfoExtensionsTests+GetPropertiesInHierarchy+Ee | System.Data.Entity.Utilities .PropertyInfoExtensionsTests+GetProperti esInHierarchy+Cher.set_AdmiralBoom(Int32 ) |
get_Mary() | get_Mary() | PropertyInfoExtensionsTests+GetPropertiesInHierarchy+Cher | System.Data.Entity.Utilities .PropertyInfoExtensionsTests+GetProperti esInHierarchy+ChimChim.get_Mary() |
set_Mary(Int32) | set_Mary(Int32) | PropertyInfoExtensionsTests+GetPropertiesInHierarchy+Cher | System.Data.Entity.Utilities .PropertyInfoExtensionsTests+GetProperti esInHierarchy+ChimChim.set_Mary(Int32) |
get_Poppins() | get_Poppins() | PropertyInfoExtensionsTests+GetPropertiesInHierarchy+Cher | System.Data.Entity.Utilities .PropertyInfoExtensionsTests+GetProperti esInHierarchy+ChimChim.get_Poppins() |
set_Poppins(Int32) | set_Poppins(Int32) | PropertyInfoExtensionsTests+GetPropertiesInHierarchy+Cher | System.Data.Entity.Utilities .PropertyInfoExtensionsTests+GetProperti esInHierarchy+ChimChim.set_Poppins(Int32 ) |
get_Bert() | get_Bert() | PropertyInfoExtensionsTests+GetPropertiesInHierarchy+Cher | System.Data.Entity.Utilities .PropertyInfoExtensionsTests+GetProperti esInHierarchy+ChimChim.get_Bert() |
set_Bert(Int32) | set_Bert(Int32) | PropertyInfoExtensionsTests+GetPropertiesInHierarchy+Cher | System.Data.Entity.Utilities .PropertyInfoExtensionsTests+GetProperti esInHierarchy+ChimChim.set_Bert(Int32) |
get_Banks() | get_Banks() | PropertyInfoExtensionsTests+GetPropertiesInHierarchy+Cher | System.Data.Entity.Utilities .PropertyInfoExtensionsTests+GetProperti esInHierarchy+ChimChim.get_Banks() |
set_AdmiralBoom(Int32) | set_AdmiralBoom(Int32) | PropertyInfoExtensionsTests+GetPropertiesInHierarchy+Cher | System.Data.Entity.Utilities .PropertyInfoExtensionsTests+GetProperti esInHierarchy+ChimChim.set_AdmiralBoom (Int32) |
get_MrsBrill() | get_MrsBrill() | PropertyInfoExtensionsTests+GetPropertiesInHierarchy+Cher | System.Data.Entity.Utilities .PropertyInfoExtensionsTests+GetProperti esInHierarchy+ChimChim.get_MrsBrill() |
set_MrsBrill(Int32) | set_MrsBrill(Int32) | PropertyInfoExtensionsTests+GetPropertiesInHierarchy+Cher | System.Data.Entity.Utilities .PropertyInfoExtensionsTests+GetProperti esInHierarchy+ChimChim.set_MrsBrill (Int32) |
get_MrBinnacle() | get_MrBinnacle() | PropertyInfoExtensionsTests+GetPropertiesInHierarchy+Cher | System.Data.Entity.Utilities .PropertyInfoExtensionsTests+GetProperti esInHierarchy+ChimChim.get_MrBinnacle() |
set_MrBinnacle(Int32) | set_MrBinnacle(Int32) | PropertyInfoExtensionsTests+GetPropertiesInHierarchy+Cher | System.Data.Entity.Utilities .PropertyInfoExtensionsTests+GetProperti esInHierarchy+ChimChim.set_MrBinnacle (Int32) |
Gillan() | Gillan() | TypeExtensionsTests+GetDeclaredMethod+Purple | System.Data.Entity.Utilities .TypeExtensionsTests+GetDeclaredMethod+D eep.Gillan() |
get_ElDiabloEnElOjo() | get_ElDiabloEnElOjo() | TypeExtensionsTests+GetProperties+TindersticksII | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties+Tinde rsticksIIVinyl.get_ElDiabloEnElOjo() |
set_ElDiabloEnElOjo(Int32) | set_ElDiabloEnElOjo(Int32) | TypeExtensionsTests+GetProperties+TindersticksII | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties+Tinde rsticksIIVinyl.set_ElDiabloEnElOjo(Int32 ) |
get_ANightIn() | get_ANightIn() | TypeExtensionsTests+GetProperties+TindersticksII | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties+Tinde rsticksIIVinyl.get_ANightIn() |
set_ANightIn(Int32) | set_ANightIn(Int32) | TypeExtensionsTests+GetProperties+TindersticksII | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties+Tinde rsticksIIVinyl.set_ANightIn(Int32) |
get_TinyTears() | get_TinyTears() | TypeExtensionsTests+GetProperties+TindersticksII | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties+Tinde rsticksIIVinyl.get_TinyTears() |
set_TinyTears(Int32) | set_TinyTears(Int32) | TypeExtensionsTests+GetProperties+TindersticksII | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties+Tinde rsticksIIVinyl.set_TinyTears(Int32) |
get_SnowyInFSharpMinor() | get_SnowyInFSharpMinor() | TypeExtensionsTests+GetProperties+TindersticksII | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties+Tinde rsticksIIVinyl.get_SnowyInFSharpMinor() |
set_Seaweed(Int32) | set_Seaweed(Int32) | TypeExtensionsTests+GetProperties+TindersticksII | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties+Tinde rsticksIIVinyl.set_Seaweed(Int32) |
get_VertrauenII() | get_VertrauenII() | TypeExtensionsTests+GetProperties+TindersticksII | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties+Tinde rsticksIIVinyl.get_VertrauenII() |
set_VertrauenII(Int32) | set_VertrauenII(Int32) | TypeExtensionsTests+GetProperties+TindersticksII | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties+Tinde rsticksIIVinyl.set_VertrauenII(Int32) |
get_TalkToMe() | get_TalkToMe() | TypeExtensionsTests+GetProperties+TindersticksII | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties+Tinde rsticksIIVinyl.get_TalkToMe() |
set_TalkToMe(Int32) | set_TalkToMe(Int32) | TypeExtensionsTests+GetProperties+TindersticksII | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties+Tinde rsticksIIVinyl.set_TalkToMe(Int32) |
get_NoMoreAffairs() | get_NoMoreAffairs() | TypeExtensionsTests+GetProperties+TindersticksII | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties+Tinde rsticksIIVinyl.get_NoMoreAffairs() |
set_Singing(Int32) | set_Singing(Int32) | TypeExtensionsTests+GetProperties+TindersticksII | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties+Tinde rsticksIIVinyl.set_Singing(Int32) |
get_ANightIn() | get_ANightIn() | TypeExtensionsTests+GetProperties+TindersticksIIVinyl | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties+Tinde rsticksIICd.get_ANightIn() |
set_ANightIn(Int32) | set_ANightIn(Int32) | TypeExtensionsTests+GetProperties+TindersticksIIVinyl | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties+Tinde rsticksIICd.set_ANightIn(Int32) |
get_TinyTears() | get_TinyTears() | TypeExtensionsTests+GetProperties+TindersticksIIVinyl | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties+Tinde rsticksIICd.get_TinyTears() |
set_TinyTears(Int32) | set_TinyTears(Int32) | TypeExtensionsTests+GetProperties+TindersticksIIVinyl | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties+Tinde rsticksIICd.set_TinyTears(Int32) |
get_SnowyInFSharpMinor() | get_SnowyInFSharpMinor() | TypeExtensionsTests+GetProperties+TindersticksIIVinyl | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties+Tinde rsticksIICd.get_SnowyInFSharpMinor() |
set_Seaweed(Int32) | set_Seaweed(Int32) | TypeExtensionsTests+GetProperties+TindersticksIIVinyl | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties+Tinde rsticksIICd.set_Seaweed(Int32) |
get_VertrauenII() | get_VertrauenII() | TypeExtensionsTests+GetProperties+TindersticksIIVinyl | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties+Tinde rsticksIICd.get_VertrauenII() |
set_VertrauenII(Int32) | set_VertrauenII(Int32) | TypeExtensionsTests+GetProperties+TindersticksIIVinyl | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties+Tinde rsticksIICd.set_VertrauenII(Int32) |
get_TalkToMe() | get_TalkToMe() | TypeExtensionsTests+GetProperties+TindersticksIIVinyl | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties+Tinde rsticksIICd.get_TalkToMe() |
set_TalkToMe(Int32) | set_TalkToMe(Int32) | TypeExtensionsTests+GetProperties+TindersticksIIVinyl | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties+Tinde rsticksIICd.set_TalkToMe(Int32) |
get_NoMoreAffairs() | get_NoMoreAffairs() | TypeExtensionsTests+GetProperties+TindersticksIIVinyl | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties+Tinde rsticksIICd.get_NoMoreAffairs() |
set_Singing(Int32) | set_Singing(Int32) | TypeExtensionsTests+GetProperties+TindersticksIIVinyl | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties+Tinde rsticksIICd.set_Singing(Int32) |
get_TravellingLight() | get_TravellingLight() | TypeExtensionsTests+GetProperties+TindersticksIIVinyl | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties+Tinde rsticksIICd.get_TravellingLight() |
set_TravellingLight(Int32) | set_TravellingLight(Int32) | TypeExtensionsTests+GetProperties+TindersticksIIVinyl | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties+Tinde rsticksIICd.set_TravellingLight(Int32) |
get_CherryBlossoms() | get_CherryBlossoms() | TypeExtensionsTests+GetProperties+TindersticksIIVinyl | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties+Tinde rsticksIICd.get_CherryBlossoms() |
set_CherryBlossoms(Int32) | set_CherryBlossoms(Int32) | TypeExtensionsTests+GetProperties+TindersticksIIVinyl | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties+Tinde rsticksIICd.set_CherryBlossoms(Int32) |
get_VertrauenIII() | get_VertrauenIII() | TypeExtensionsTests+GetProperties+TindersticksIIVinyl | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties+Tinde rsticksIICd.get_VertrauenIII() |
set_VertrauenIII(Int32) | set_VertrauenIII(Int32) | TypeExtensionsTests+GetProperties+TindersticksIIVinyl | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties+Tinde rsticksIICd.set_VertrauenIII(Int32) |
get_PublicVirtualBase() | get_PublicVirtualBase() | PropertyFilterTests+PropertyFilterTests_Base | System.Data.Entity.ModelConfiguration .Mappers .PropertyFilterTests+PropertyFilterTests _Derived.get_PublicVirtualBase() |
set_PublicVirtualBase(Int32) | set_PublicVirtualBase(Int32) | PropertyFilterTests+PropertyFilterTests_Base | System.Data.Entity.ModelConfiguration .Mappers .PropertyFilterTests+PropertyFilterTests _Derived.set_PublicVirtualBase(Int32) |
get_InternalVirtualBase() | get_InternalVirtualBase() | PropertyFilterTests+PropertyFilterTests_Base | System.Data.Entity.ModelConfiguration .Mappers .PropertyFilterTests+PropertyFilterTests _Derived.get_InternalVirtualBase() |
set_InternalVirtualBase(Int32) | set_InternalVirtualBase(Int32) | PropertyFilterTests+PropertyFilterTests_Base | System.Data.Entity.ModelConfiguration .Mappers .PropertyFilterTests+PropertyFilterTests _Derived.set_InternalVirtualBase(Int32) |
get_ProtectedVirtualBase() | get_ProtectedVirtualBase() | PropertyFilterTests+PropertyFilterTests_Base | System.Data.Entity.ModelConfiguration .Mappers .PropertyFilterTests+PropertyFilterTests _Derived.get_ProtectedVirtualBase() |
set_ProtectedVirtualBase(Int32) | set_ProtectedVirtualBase(Int32) | PropertyFilterTests+PropertyFilterTests_Base | System.Data.Entity.ModelConfiguration .Mappers .PropertyFilterTests+PropertyFilterTests _Derived.set_ProtectedVirtualBase(Int32) |
GetConfigurationType() | GetConfigurationType() | PrimitivePropertyConfigurationTests | System.Data.Entity.ModelConfiguration .Configuration.Properties.Primitive .DateTimePropertyConfigurationTests .GetConfigurationType() |
GetConfigurationType() | GetConfigurationType() | PrimitivePropertyConfigurationTests | System.Data.Entity.ModelConfiguration .Configuration.Properties.Primitive .DecimalPropertyConfigurationTests .GetConfigurationType() |
get_FakeSet1() | get_FakeSet1() | DbSetDiscoveryServiceTests+DerivedDbContextForPropertyOverrideLevel1 | System.Data.Entity.Internal .DbSetDiscoveryServiceTests+DerivedDbCon textForPropertyOverrideLevel2 .get_FakeSet1() |
set_FakeSet1(DbSet<Random>) | set_FakeSet1(DbSet<Random>) | DbSetDiscoveryServiceTests+DerivedDbContextForPropertyOverrideLevel1 | System.Data.Entity.Internal .DbSetDiscoveryServiceTests+DerivedDbCon textForPropertyOverrideLevel2 .set_FakeSet1(DbSet<Random>) |
get_FakeSet1() | get_FakeSet1() | DbSetDiscoveryServiceTests+DerivedDbContextWithInheritanceBLevel1 | System.Data.Entity.Internal .DbSetDiscoveryServiceTests+DerivedDbCon textWithInheritanceBLevel2.get_FakeSet1( ) |
set_FakeSet1(DbSet<Random>) | set_FakeSet1(DbSet<Random>) | DbSetDiscoveryServiceTests+DerivedDbContextWithInheritanceBLevel1 | System.Data.Entity.Internal .DbSetDiscoveryServiceTests+DerivedDbCon textWithInheritanceBLevel2.set_FakeSet1 (DbSet<Random>) |
Statistics
Stat | shouldCall | definedInBaseClass |
---|---|---|
Sum: | 0 | 0 |
Average: | 0 | 0 |
Minimum: | 0 | 0 |
Maximum: | 0 | 0 |
Standard deviation: | 0 | 0 |
Variance: | 0 | 0 |
![]() | Query error: Do not hide base class methods |
Content of the Rule or Query
// To fix a violation of this rule, remove or rename the method, or change the parameter signature
// so that the method does not hide the base method.
// More on hiding vs. virtual usefulness here:
// http://www.artima.com/intv/nonvirtual.html
// http://blogs.msdn.com/b/ericlippert/archive/2008/05/21/method-hiding-apologia.aspx
warnif count > 0
// Define a lookup table indexing methods by their name including parameters signature.
let lookup = Methods.Where(m => !m.IsConstructor && !m.IsStatic && !m.IsGeneratedByCompiler)
.ToLookup(m1 => m1.Name)
from t in Application.Types
where !t.IsStatic && t.IsClass &&
// Discard classes deriving directly from System.Object
t.DepthOfInheritance > 1
where t.BaseClasses.Any()
// For each methods not overriding any methods (new slot),
// let's check if it hides by name some methods defined in base classe.
from m in t.InstanceMethods
where m.IsNewSlot && !m.IsExplicitInterfaceImpl && !m.IsGeneratedByCompiler
// Notice how lookup is used to quickly retrieve methods with same name as m.
// This makes the query 10 times faster than iterating each base methods to check their name.
let baseMethodsHidden = lookup[m.Name].Where(m1 => m1 != m && t.DeriveFrom(m1.ParentType))
where baseMethodsHidden.Count() > 0
select new { m, baseMethodsHidden }View Code Query or Rule BodyView Code Query or Rule Body
![]() | Rule warning: A stateless class or structure might be turned into a static type |
// This rule indicates stateless types that might
// eventually be turned into static classes.
warnif count > 0 from t in JustMyCode.Types where
!t.IsStatic &&
!t.IsGeneric &&
t.InstanceFields.Count() == 0 &&
// Don't match:
// --> types that implement some interfaces.
t.NbInterfacesImplemented == 0 &&
// --> or classes that have sub-classes children.
t.NbChildren == 0 &&
// --> or classes that have a base class
((t.IsClass && t.DepthOfDeriveFrom("System.Object".AllowNoMatch()) == 1) ||
t.IsStructure)
select t
View Code Query or Rule BodyView Code Query or Rule Body
893 types matched
types | Full Name |
---|---|
<>f__AnonymousType23 | <>f__AnonymousType23 |
AnyValueParameter | System.Data.Entity.AnyValueParameter |
AnnotationAttributeBuilder | System.Data.Entity .AnnotationAttributeBuilder |
ConventionsScenarioTests | FunctionalTests.ConventionsScenarioTests |
FunctionsScenarioTests | FunctionalTests.FunctionsScenarioTests |
FunctionsScenarioTests+ModificationFunct ions | FunctionalTests .FunctionsScenarioTests+ModificationFunc tions |
NT | DaFunc.NT |
EntitySplitingTests | System.Data.Entity.CodeFirst .EntitySplitingTests |
InheritanceScenarioTests | System.Data.Entity.CodeFirst .InheritanceScenarioTests |
NameUniquificationTests | System.Data.Entity.CodeFirst .NameUniquificationTests |
NameUniquificationTests+Case1 | System.Data.Entity.CodeFirst .NameUniquificationTests+Case1 |
NameUniquificationTests+Case1+Order1 | System.Data.Entity.CodeFirst .NameUniquificationTests+Case1+Order1 |
NameUniquificationTests+Case1+Order2 | System.Data.Entity.CodeFirst .NameUniquificationTests+Case1+Order2 |
NameUniquificationTests+Case2 | System.Data.Entity.CodeFirst .NameUniquificationTests+Case2 |
NameUniquificationTests+Case2+Order1 | System.Data.Entity.CodeFirst .NameUniquificationTests+Case2+Order1 |
NameUniquificationTests+Case2+Order2 | System.Data.Entity.CodeFirst .NameUniquificationTests+Case2+Order2 |
NameUniquificationTests+Case3 | System.Data.Entity.CodeFirst .NameUniquificationTests+Case3 |
NameUniquificationTests+Case3+Order1 | System.Data.Entity.CodeFirst .NameUniquificationTests+Case3+Order1 |
NameUniquificationTests+Case3+Order2 | System.Data.Entity.CodeFirst .NameUniquificationTests+Case3+Order2 |
NameUniquificationTests+Case4 | System.Data.Entity.CodeFirst .NameUniquificationTests+Case4 |
NonPublicPropertyTests | System.Data.Entity.CodeFirst .NonPublicPropertyTests |
GetHashCodeTests | System.Data.Entity.ProductivityApi .GetHashCodeTests |
HasChangesTests | System.Data.Entity.ProductivityApi .HasChangesTests |
DebugCheck | System.Data.Entity.Functionals.Utilities .DebugCheck |
EnumTests | System.Data.Entity.Query.LinqToEntities .EnumTests |
FunctionsTests | System.Data.Entity.Query.LinqToEntities .FunctionsTests |
FunctionsTests+StringFunctions | System.Data.Entity.Query.LinqToEntities .FunctionsTests+StringFunctions |
FunctionsTests+DateTimeFunctions | System.Data.Entity.Query.LinqToEntities .FunctionsTests+DateTimeFunctions |
FunctionsTests+MathFunctions | System.Data.Entity.Query.LinqToEntities .FunctionsTests+MathFunctions |
IncludeTests | System.Data.Entity.Query.LinqToEntities .IncludeTests |
MaterializationTests | System.Data.Entity.Query.LinqToEntities .MaterializationTests |
OrderByLiftingTests | System.Data.Entity.Query.LinqToEntities .OrderByLiftingTests |
ExtraLazyLoadingTests | ProductivityApiTests .ExtraLazyLoadingTests |
ExtraLazyLoadingTests+FakeEntityWithRead onlyCollection | ProductivityApiTests .ExtraLazyLoadingTests+FakeEntityWithRea donlyCollection |
PluralizationServiceTests | ProductivityApiTests .PluralizationServiceTests |
StreamingTests | ProductivityApiTests.StreamingTests |
FunctionsScenarioTests | System.Data.Entity.CodeFirst .FunctionsScenarioTests |
MetadataCachingTestsFixture | System.Data.Entity.Metadata .MetadataCachingTestsFixture |
DebugCheck | System.Data.Entity.Functionals.Utilities .DebugCheck |
JoinTests | System.Data.Entity.Query.LinqToEntities .JoinTests |
IceAndFireModel | System.Data.Entity.Query .StoredProcedures.IceAndFireModel |
StoredProceduresTestFixture | System.Data.Entity.Query .StoredProcedures .StoredProceduresTestFixture |
ArubaDatabaseSeeder | System.Data.Entity.TestModels.ArubaModel .ArubaDatabaseSeeder |
GearsOfWarDatabaseSeeder | System.Data.Entity.TestModels .GearsOfWarModel .GearsOfWarDatabaseSeeder |
FantasyDatabaseSeeder | System.Data.Entity.TestModels .FantasyModel.FantasyDatabaseSeeder |
NamespaceAndNestingTests+Outer1 | ProductivityApiTests .NamespaceAndNestingTests+Outer1 |
NamespaceAndNestingTests+Outer2 | ProductivityApiTests .NamespaceAndNestingTests+Outer2 |
NamespaceAndNestingTests+ImplicitOuter1 | ProductivityApiTests .NamespaceAndNestingTests+ImplicitOuter1 |
NamespaceAndNestingTests+ImplicitOuter2 | ProductivityApiTests .NamespaceAndNestingTests+ImplicitOuter2 |
NamespaceAndNestingTests+ImplicitComplex Outer1 | ProductivityApiTests .NamespaceAndNestingTests+ImplicitComple xOuter1 |
NamespaceAndNestingTests+ImplicitComplex Outer2 | ProductivityApiTests .NamespaceAndNestingTests+ImplicitComple xOuter2 |
NamespaceAndNestingTests+ImplicitEnumOut er1 | ProductivityApiTests .NamespaceAndNestingTests+ImplicitEnumOu ter1 |
NamespaceAndNestingTests+ImplicitEnumOut er2 | ProductivityApiTests .NamespaceAndNestingTests+ImplicitEnumOu ter2 |
NamespaceAndNestingTests+MixedImplicitOu ter1 | ProductivityApiTests .NamespaceAndNestingTests+MixedImplicitO uter1 |
NamespaceAndNestingTests+MixedImplicitOu ter2 | ProductivityApiTests .NamespaceAndNestingTests+MixedImplicitO uter2 |
NamespaceAndNestingTests+MixedImplicitCo mplexOuter1 | ProductivityApiTests .NamespaceAndNestingTests+MixedImplicitC omplexOuter1 |
NamespaceAndNestingTests+MixedImplicitCo mplexOuter2 | ProductivityApiTests .NamespaceAndNestingTests+MixedImplicitC omplexOuter2 |
NamespaceAndNestingTests+MixedEnumImplic itOuter1 | ProductivityApiTests .NamespaceAndNestingTests+MixedEnumImpli citOuter1 |
NamespaceAndNestingTests+MixedEnumImplic itOuter2 | ProductivityApiTests .NamespaceAndNestingTests+MixedEnumImpli citOuter2 |
NamespaceAndNestingTests+NotMappedOuter1 | ProductivityApiTests .NamespaceAndNestingTests+NotMappedOuter 1 |
NamespaceAndNestingTests+NotMappedOuter2 | ProductivityApiTests .NamespaceAndNestingTests+NotMappedOuter 2 |
NamespaceAndNestingTests+NotMappedEnumOu ter1 | ProductivityApiTests .NamespaceAndNestingTests+NotMappedEnumO uter1 |
NamespaceAndNestingTests+NotMappedEnumOu ter2 | ProductivityApiTests .NamespaceAndNestingTests+NotMappedEnumO uter2 |
FindTests+DummyEntity | ProductivityApiTests .FindTests+DummyEntity |
DbFunctionScenarios+EntityFunctionsProxi es | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies |
MyProject+MyWebServices | My.MyProject+MyWebServices |
NoNamespaceClass | NoNamespaceClass |
NoNamespaceClass+Nested | NoNamespaceClass+Nested |
<>f__AnonymousType1 | <>f__AnonymousType1 |
DbConfigurationTests | System.Data.Entity.DbConfigurationTests |
DbConfigurationTests+SetConfiguration | System.Data.Entity .DbConfigurationTests+SetConfiguration |
DbConfigurationTests+LoadConfiguration | System.Data.Entity .DbConfigurationTests+LoadConfiguration |
DbConfigurationTests+AddDependencyResolv er | System.Data.Entity .DbConfigurationTests+AddDependencyResol ver |
DbConfigurationTests+AddDefaultResolver | System.Data.Entity .DbConfigurationTests+AddDefaultResolver |
DbConfigurationTests+Loaded | System.Data.Entity .DbConfigurationTests+Loaded |
DbConfigurationTests+SetProviderServices | System.Data.Entity .DbConfigurationTests+SetProviderService s |
DbConfigurationTests+SetProviderFactory | System.Data.Entity .DbConfigurationTests+SetProviderFactory |
DbConfigurationTests+SetTransactionHandl er | System.Data.Entity .DbConfigurationTests+SetTransactionHand ler |
DbConfigurationTests+SetExecutionStrateg y | System.Data.Entity .DbConfigurationTests+SetExecutionStrate gy |
DbConfigurationTests+SetPluralizationSer vice | System.Data.Entity .DbConfigurationTests+SetPluralizationSe rvice |
DbConfigurationTests+DependencyResolver | System.Data.Entity .DbConfigurationTests+DependencyResolver |
DbConfigurationTests+SetDatabaseInitiali zer | System.Data.Entity .DbConfigurationTests+SetDatabaseInitial izer |
DbConfigurationTests+SetMigrationSqlGene rator | System.Data.Entity .DbConfigurationTests+SetMigrationSqlGen erator |
DbConfigurationTests+SetManifestTokenRes olver | System.Data.Entity .DbConfigurationTests+SetManifestTokenRe solver |
DbConfigurationTests+SetProviderFactoryR esolver | System.Data.Entity .DbConfigurationTests+SetProviderFactory Resolver |
DbConfigurationTests+SetModelCacheKey | System.Data.Entity .DbConfigurationTests+SetModelCacheKey |
DbConfigurationTests+SetHistoryContext | System.Data.Entity .DbConfigurationTests+SetHistoryContext |
DbConfigurationTests+SetDefaultSpatialSe rvices | System.Data.Entity .DbConfigurationTests+SetDefaultSpatialS ervices |
DbConfigurationTests+SetSpatialServices | System.Data.Entity .DbConfigurationTests+SetSpatialServices |
DbConfigurationTests+SetDatabaseLogForma tter | System.Data.Entity .DbConfigurationTests+SetDatabaseLogForm atter |
DbConfigurationTests+AddInterceptor | System.Data.Entity .DbConfigurationTests+AddInterceptor |
DbConfigurationTests+SetMetadataAnnotati onSerializer | System.Data.Entity .DbConfigurationTests+SetMetadataAnnotat ionSerializer |
DbConfigurationTests+SetContextFactory | System.Data.Entity .DbConfigurationTests+SetContextFactory |
DbConfigurationTests+SetTableExistenceCh ecker | System.Data.Entity .DbConfigurationTests+SetTableExistenceC hecker |
DbConfigurationTypeAttributeTests | System.Data.Entity .DbConfigurationTypeAttributeTests |
IDbAsyncEnumerableExtensionsTests | System.Data.Entity .IDbAsyncEnumerableExtensionsTests |
QueryableExtensionsTests | System.Data.Entity .QueryableExtensionsTests |
QueryableExtensionsTests+AsNotracking_Ge neric | System.Data.Entity .QueryableExtensionsTests+AsNotracking_G eneric |
QueryableExtensionsTests+AsNotracking_No nGeneric | System.Data.Entity .QueryableExtensionsTests+AsNotracking_N onGeneric |
QueryableExtensionsTests+AsStreaming_Gen eric | System.Data.Entity .QueryableExtensionsTests+AsStreaming_Ge neric |
Statistics
Stat |
---|
Sum: |
Average: |
Minimum: |
Maximum: |
Standard deviation: |
Variance: |
![]() | Rule warning: Non-static classes should be instantiated or turned to static |
// Notice that classes only instantiated through reflection, like plug-in root classes
// are matched by this rules.
warnif count > 0
from t in JustMyCode.Types
where t.IsClass &&
//!t.IsPublic && // if you are developing a framework,
// you might not want to match public classes
!t.IsStatic &&
!t.IsAttributeClass && // Attributes class are never seen as instantiated
!t.DeriveFrom("System.MarshalByRefObject".AllowNoMatch()) // Types instantiated through remoting infrastructure
// find the first constructor of t called
let ctorCalled = t.Constructors.FirstOrDefault(ctor => ctor.NbMethodsCallingMe > 0)
// match t if none of its constructors is called.
where ctorCalled == null
select new { t, t.Visibility }View Code Query or Rule BodyView Code Query or Rule Body
2,313 types matched
types | Visibility | Full Name |
---|---|---|
AnnotationAttributeBuilder | Public | System.Data.Entity .AnnotationAttributeBuilder |
DynamicStructuralType | Public | System.Data.Entity.DynamicStructuralType |
TableSplittingTests+E1 | Public | System.Data.Entity.CodeFirst .TableSplittingTests+E1 |
TableSplittingTests+E2 | Public | System.Data.Entity.CodeFirst .TableSplittingTests+E2 |
TableSplittingTests+E3 | Public | System.Data.Entity.CodeFirst .TableSplittingTests+E3 |
TableSplittingTests+B1 | Public | System.Data.Entity.CodeFirst .TableSplittingTests+B1 |
TableSplittingTests+C1 | Public | System.Data.Entity.CodeFirst .TableSplittingTests+C1 |
TableSplittingTests+Z | Public | System.Data.Entity.CodeFirst .TableSplittingTests+Z |
TptMappingTests+AA | Public | System.Data.Entity.CodeFirst .TptMappingTests+AA |
TptMappingTests+AB | Public | System.Data.Entity.CodeFirst .TptMappingTests+AB |
TptMappingTests+BA | Public | System.Data.Entity.CodeFirst .TptMappingTests+BA |
TptMappingTests+BB | Public | System.Data.Entity.CodeFirst .TptMappingTests+BB |
TableInfo | Public | System.Data.Entity.Migrations.TableInfo |
ColumnInfo | Public | System.Data.Entity.Migrations.ColumnInfo |
UniqueConstraintInfo | Public | System.Data.Entity.Migrations .UniqueConstraintInfo |
PrimaryKeyConstraintInfo | Public | System.Data.Entity.Migrations .PrimaryKeyConstraintInfo |
ReferentialConstraintInfo | Public | System.Data.Entity.Migrations .ReferentialConstraintInfo |
KeyColumnUsageInfo | Public | System.Data.Entity.Migrations .KeyColumnUsageInfo |
GoldCustomer | Public | System.Data.Entity.Migrations .GoldCustomer |
OrderLine | Public | System.Data.Entity.Migrations.OrderLine |
MigrationsStore | Public | System.Data.Entity.Migrations .MigrationsStore |
WithGuidKey | Public | System.Data.Entity.Migrations .WithGuidKey |
ShopContext_v1b | Public | System.Data.Entity.Migrations .ShopContext_v1b |
ShopContextConfiguration_v1b | Public | System.Data.Entity.Migrations .ShopContextConfiguration_v1b |
ShopContext_v4 | Public | System.Data.Entity.Migrations .ShopContext_v4 |
ShopContext_v5 | Public | System.Data.Entity.Migrations .ShopContext_v5 |
ShopContext_v6 | Public | System.Data.Entity.Migrations .ShopContext_v6 |
EmptyModel | Public | System.Data.Entity.Migrations.EmptyModel |
NonEmptyModel | Public | System.Data.Entity.Migrations .NonEmptyModel |
MigrationsBlog | Public | System.Data.Entity.Migrations .MigrationsBlog |
MigrationsEmployee | Internal | System.Data.Entity.Migrations .MigrationsEmployee |
TypeCasts | Public | System.Data.Entity.Migrations.TypeCasts |
Comment | Public | System.Data.Entity.Migrations.Comment |
ProcessedTransactionContext | Public | System.Data.Entity.Migrations .ProcessedTransactionContext |
ProcessedTransaction | Public | System.Data.Entity.Migrations .ProcessedTransaction |
Role | Public | System.Data.Entity.Migrations .UserRoles_v1.Role |
User | Public | System.Data.Entity.Migrations .UserRoles_v1.User |
Role | Public | System.Data.Entity.Migrations .UserRoles_v2.Role |
User2 | Public | System.Data.Entity.Migrations .UserRoles_v2.User2 |
TableRenameDerived1 | Public | System.Data.Entity.Migrations .OSpaceRenames_v1.TableRenameDerived1 |
TableRenameManyManyLeft1 | Public | System.Data.Entity.Migrations .OSpaceRenames_v1 .TableRenameManyManyLeft1 |
TableRenameManyManyRight | Public | System.Data.Entity.Migrations .OSpaceRenames_v1 .TableRenameManyManyRight |
TableRenameEntitySplit1 | Public | System.Data.Entity.Migrations .OSpaceRenames_v1 .TableRenameEntitySplit1 |
TableRenameTableSplit1 | Public | System.Data.Entity.Migrations .OSpaceRenames_v1.TableRenameTableSplit1 |
TableRenameTableSplitPayload1 | Public | System.Data.Entity.Migrations .OSpaceRenames_v1 .TableRenameTableSplitPayload1 |
ColumnRenameDerived | Public | System.Data.Entity.Migrations .OSpaceRenames_v1.ColumnRenameDerived |
ComplexType | Public | System.Data.Entity.Migrations .OSpaceRenames_v1.ComplexType |
IaParent | Public | System.Data.Entity.Migrations .OSpaceRenames_v1.IaParent |
OrphanedColumn1 | Public | System.Data.Entity.Migrations .OSpaceRenames_v1.OrphanedColumn1 |
OrphanedColumnParent | Public | System.Data.Entity.Migrations .OSpaceRenames_v1.OrphanedColumnParent |
TableRenameDerived2 | Public | System.Data.Entity.Migrations .OSpaceRenames_v2.TableRenameDerived2 |
TableRenameManyManyLeft2 | Public | System.Data.Entity.Migrations .OSpaceRenames_v2 .TableRenameManyManyLeft2 |
TableRenameManyManyRight | Public | System.Data.Entity.Migrations .OSpaceRenames_v2 .TableRenameManyManyRight |
TableRenameEntitySplit2 | Public | System.Data.Entity.Migrations .OSpaceRenames_v2 .TableRenameEntitySplit2 |
TableRenameTableSplit2 | Public | System.Data.Entity.Migrations .OSpaceRenames_v2.TableRenameTableSplit2 |
TableRenameTableSplitPayload2 | Public | System.Data.Entity.Migrations .OSpaceRenames_v2 .TableRenameTableSplitPayload2 |
ColumnRenameDerived | Public | System.Data.Entity.Migrations .OSpaceRenames_v2.ColumnRenameDerived |
ComplexType | Public | System.Data.Entity.Migrations .OSpaceRenames_v2.ComplexType |
IaParent | Public | System.Data.Entity.Migrations .OSpaceRenames_v2.IaParent |
OrphanedColumn2 | Public | System.Data.Entity.Migrations .OSpaceRenames_v2.OrphanedColumn2 |
OrphanedColumnParent | Public | System.Data.Entity.Migrations .OSpaceRenames_v2.OrphanedColumnParent |
AdvancedMappingScenarioTests+SomeRole | Public | FunctionalTests .AdvancedMappingScenarioTests+SomeRole |
AdvancedMappingScenarioTests+SomeUser | Public | FunctionalTests .AdvancedMappingScenarioTests+SomeUser |
AdvancedMappingScenarioTests+UserRole | Public | FunctionalTests .AdvancedMappingScenarioTests+UserRole |
AdvancedMappingScenarioTests+MaxLengthPr operties | Public | FunctionalTests .AdvancedMappingScenarioTests+MaxLengthP roperties |
AdvancedMappingScenarioTests+EntityWithC onfiguredDuplicateColumn | Public | FunctionalTests .AdvancedMappingScenarioTests+EntityWith ConfiguredDuplicateColumn |
AdvancedMappingScenarioTests+EntityWithD escA | Public | FunctionalTests .AdvancedMappingScenarioTests+EntityWith DescA |
AdvancedMappingScenarioTests+EntityWithD escB | Public | FunctionalTests .AdvancedMappingScenarioTests+EntityWith DescB |
AdvancedMappingScenarioTests+EntityWithD escC | Public | FunctionalTests .AdvancedMappingScenarioTests+EntityWith DescC |
AdvancedMappingScenarioTests+ComplexWith Desc | Public | FunctionalTests .AdvancedMappingScenarioTests+ComplexWit hDesc |
AdvancedMappingScenarioTests+SplitProduc t | Public | FunctionalTests .AdvancedMappingScenarioTests+SplitProdu ct |
AdvancedMappingScenarioTests+SplitProduc tDetail | Public | FunctionalTests .AdvancedMappingScenarioTests+SplitProdu ctDetail |
AdvancedMappingScenarioTests+DecimalKey | Public | FunctionalTests .AdvancedMappingScenarioTests+DecimalKey |
AdvancedMappingScenarioTests+DecimalDepe ndent | Public | FunctionalTests .AdvancedMappingScenarioTests+DecimalDep endent |
AdvancedMappingScenarioTests+SingleAbstr act | Public | FunctionalTests .AdvancedMappingScenarioTests+SingleAbst ract |
AdvancedMappingScenarioTests+StockOrder | Public | FunctionalTests .AdvancedMappingScenarioTests+StockOrder |
AdvancedMappingScenarioTests+Organizatio n | Public | FunctionalTests .AdvancedMappingScenarioTests+Organizati on |
AdvancedMappingScenarioTests+Location | Public | FunctionalTests .AdvancedMappingScenarioTests+Location |
AdvancedMappingScenarioTests+CodePlex218 1+LoginInformation | Public | FunctionalTests .AdvancedMappingScenarioTests+CodePlex21 81+LoginInformation |
AdvancedMappingScenarioTests+CodePlex218 1+Administrator | Public | FunctionalTests .AdvancedMappingScenarioTests+CodePlex21 81+Administrator |
AssociationScenarioTests+Dependent_17294 9 | Public | FunctionalTests .AssociationScenarioTests+Dependent_1729 49 |
AssociationScenarioTests+Principal_17294 9 | Public | FunctionalTests .AssociationScenarioTests+Principal_1729 49 |
AssociationScenarioTests+Principal_15900 1 | Public | FunctionalTests .AssociationScenarioTests+Principal_1590 01 |
AssociationScenarioTests+Dependent_15900 1a | Public | FunctionalTests .AssociationScenarioTests+Dependent_1590 01a |
AssociationScenarioTests+Dependent_15900 1b | Public | FunctionalTests .AssociationScenarioTests+Dependent_1590 01b |
AssociationScenarioTests+PrincipalWithNa v_159001a | Public | FunctionalTests .AssociationScenarioTests+PrincipalWithN av_159001a |
AssociationScenarioTests+DependentWithNa v_159001a | Public | FunctionalTests .AssociationScenarioTests+DependentWithN av_159001a |
AssociationScenarioTests+Principal_18190 9 | Public | FunctionalTests .AssociationScenarioTests+Principal_1819 09 |
AssociationScenarioTests+Dependent_18190 9 | Public | FunctionalTests .AssociationScenarioTests+Dependent_1819 09 |
AssociationScenarioTests+Order_181909 | Public | FunctionalTests .AssociationScenarioTests+Order_181909 |
AssociationScenarioTests+OrderLine_18190 9 | Public | FunctionalTests .AssociationScenarioTests+OrderLine_1819 09 |
AssociationScenarioTests+Dependent_16234 8 | Public | FunctionalTests .AssociationScenarioTests+Dependent_1623 48 |
AssociationScenarioTests+Dependent_6927 | Public | FunctionalTests .AssociationScenarioTests+Dependent_6927 |
AssociationScenarioTests+Principal_6927 | Public | FunctionalTests .AssociationScenarioTests+Principal_6927 |
AssociationScenarioTests+DependentWithNu llableFkIdentifying | Public | FunctionalTests .AssociationScenarioTests+DependentWithN ullableFkIdentifying |
AssociationScenarioTests+PrincipalWithNu llableFkIdentifying | Public | FunctionalTests .AssociationScenarioTests+PrincipalWithN ullableFkIdentifying |
AssociationScenarioTests+DependentWithNu llableFk | Public | FunctionalTests .AssociationScenarioTests+DependentWithN ullableFk |
AssociationScenarioTests+PrincipalWithNu llableFk | Public | FunctionalTests .AssociationScenarioTests+PrincipalWithN ullableFk |
AssociationScenarioTests+ProductManyToMa nyTableNaming | Public | FunctionalTests .AssociationScenarioTests+ProductManyToM anyTableNaming |
AssociationScenarioTests+SupplierManyToM anyTableNaming | Public | FunctionalTests .AssociationScenarioTests+SupplierManyTo ManyTableNaming |
Statistics
Stat | Visibility |
---|---|
Sum: | 0 |
Average: | 0 |
Minimum: | 0 |
Maximum: | 0 |
Standard deviation: | 0 |
Variance: | 0 |
![]() | Query error: Methods should be declared static if possible |
Content of the Rule or Query
warnif count > 0
// When an instance method can be safely declared as static you should declare it as static.
// Since it doesn't use any instance data and method of its type and base-types,
// you should consider if such a method could be moved to a static utility class
// or if it is strongly related enough to its current declaring type to stay in it.
//
// Turning an instance method into a static method is a micro performance optimization
// since a static method is a bit cheaper to invoke than an instance method.
from t in JustMyCode.Types.Where(t =>
!t.IsStatic && !t.IsInterface &&
!t.IsEnumeration && !t.IsDelegate &&
!t.IsGeneratedByCompiler)
let methodsThatCanBeMadeStatic =
from m in t.InstanceMethods
// An instance method can be turned to static if it is not virtual,
// not using the this reference and also, not using
// any of its class or base classes instance fields or instance methods.
where !m.IsAbstract && !m.IsVirtual &&
!m.AccessThis && !m.IsExplicitInterfaceImpl &&
// Optimization: Using FirstOrDefault() avoid to check all members,
// as soon as one member is found
// we know the method m cannot be made static.
m.MembersUsed.FirstOrDefault(
mUsed => !mUsed.IsStatic &&
(mUsed.ParentType == t ||
t.DeriveFrom(mUsed.ParentType))
) == null
select m
from m in methodsThatCanBeMadeStatic
let staticFieldsUsed = m.ParentType.StaticFields.UsedBy(m).Where(f => !f.IsGeneratedByCompiler)
select new { m, staticFieldsUsed }View Code Query or Rule BodyView Code Query or Rule Body
![]() | Query error: Constructor should not call a virtual methods |
Content of the Rule or Query
// Returns constructor of a non-sealed type calling virtual methods.
// In such a situation, if a derived class overrides the method,
// then the override method will be called before the derived constructor.
// This makes the class fragile to derive from.
//
// Violations reported can be solved by re-designing object initialisation
// or by marking the parent class as sealed, if possible.
warnif count > 0
from t in Application.Types where
t.IsClass &&
!t.IsGeneratedByCompiler &&
!t.IsSealed
from ctor in t.Constructors
let virtualMethodsCalled = from mCalled in ctor.MethodsCalled
where mCalled.IsVirtual &&
(mCalled.ParentType == t ||
t.DeriveFrom(mCalled.ParentType))
select mCalled
where virtualMethodsCalled.Count() > 0
select new { ctor ,
virtualMethodsCalled,
// If there is no derived type, it might be
// an opportunity to mark t as sealed.
t.DerivedTypes }View Code Query or Rule BodyView Code Query or Rule Body
![]() | Rule warning: Avoid the Singleton pattern |
warnif count > 0
from t in Application.Types
where !t.IsStatic && !t.IsAbstract && (t.IsClass || t.IsStructure)
// All ctors of a singleton are private
where t.Constructors.Where(ctor => !ctor.IsPrivate).Count() == 0
// A singleton contains one static field of its parent type, to reference the unique instance
let staticFieldInstances = t.StaticFields.WithFieldType(t)
where staticFieldInstances.Count() == 1
select new { t, staticFieldInstance = staticFieldInstances.First() }
// The Singleton pattern consists in syntactically enforcing that a class
// has just one unique instance.
// At first glance, this pattern looks appealing and it is widely used.
// However, we discourage you from using singleton classes because experience
// shows that singletons often result in less testable and less maintainable code.
// More details available in these discussions:
// http://codebetter.com/patricksmacchia/2011/05/04/back-to-basics-usage-of-static-members/
// http://adamschepis.com/blog/2011/05/02/im-adam-and-im-a-recovering-singleton-addict/
View Code Query or Rule BodyView Code Query or Rule Body
4 types matched
types | staticFieldInstance | Full Name |
---|---|---|
GenericProviderFactory<T> | Instance | System.Data.Entity .GenericProviderFactory<T> |
MutableResolver | _instance | System.Data.Entity.MutableResolver |
WrappingAdoNetProvider<TBase> | Instance | System.Data.Entity.WrappingProvider .WrappingAdoNetProvider<TBase> |
WrappingEfProvider<TAdoNetBase,TEfBase> | Instance | System.Data.Entity.WrappingProvider .WrappingEfProvider<TAdoNetBase,TEfBase> |
Statistics
Stat | staticFieldInstance |
---|---|
Sum: | 0 |
Average: | 0 |
Minimum: | 0 |
Maximum: | 0 |
Standard deviation: | 0 |
Variance: | 0 |
![]() | Rule warning: Don't assign static fields from instance methods |
// Assigning static fields from instance methods leads to
// poorly maintainable and non thread-safe code.
// It is advised to assign static fields inline or from class constructor.
warnif count > 0
from f in Application.Fields where
f.IsStatic &&
!f.IsLiteral &&
!f.IsInitOnly &&
!f.IsGeneratedByCompiler &&
// Contract API define such a insideContractEvaluation static field
f.Name != "insideContractEvaluation"
let assignedBy = f.MethodsAssigningMe.Where(m => !m.IsStatic)
where assignedBy .Count() > 0
select new { f, assignedBy }View Code Query or Rule BodyView Code Query or Rule Body
12 fields matched
fields | assignedBy | Full Name |
---|---|---|
_assemblyCount | 1 method | System.Data.Entity.DynamicAssembly ._assemblyCount |
_isSqlAzure | 1 method | System.Data.Entity.Update .GuidIdentityColumnUpdateTests ._isSqlAzure |
_context2Static | 1 method | ProductivityApiTests .LinqTests+ClassWithContextFieldAndOther Fields._context2Static |
_context3Static | 1 method | ProductivityApiTests .LinqTests+ClassWithContextFieldAndOther Fields._context3Static |
ValidateWithoutContextFunc | 1 method | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .EntityWithPropertyLevelCustomValidation Attributes.ValidateWithoutContextFunc |
ValidateWithContextFunc | 1 method | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .EntityWithPropertyLevelCustomValidation Attributes.ValidateWithContextFunc |
ValidateWithoutContextFunc | 1 method | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .EntityWithEntityLevelCustomValidationAt tributes.ValidateWithoutContextFunc |
ValidateWithContextFunc | 1 method | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .EntityWithEntityLevelCustomValidationAt tributes.ValidateWithContextFunc |
ValidateWithoutContextFunc | 3 methods | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .ComplexTypeWithTypeLevelCustomValidatio nAttributes.ValidateWithoutContextFunc |
ValidateWithContextFunc | 3 methods | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .ComplexTypeWithTypeLevelCustomValidatio nAttributes.ValidateWithContextFunc |
ValidateWithoutContextFunc | 1 method | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .EntityWithComplexTypeLevelCustomValidat ionAttributes.ValidateWithoutContextFunc |
CustomValidateFunc | 1 method | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .EntityWithAllKindsOfValidation .CustomValidateFunc |
Statistics
Stat | assignedBy |
---|---|
Sum: | 0 |
Average: | 0 |
Minimum: | 0 |
Maximum: | 0 |
Standard deviation: | 0 |
Variance: | 0 |
![]() | Rule warning: Avoid empty interfaces |
warnif count > 0 from t in JustMyCode.Types where
t.IsInterface &&
t.NbMethods == 0
select new { t, t.TypesThatImplementMe }
// Interfaces define members that provide a behavior
// or usage contract. The functionality described by
// the interface can be adopted by any type,
// regardless of where the type appears in the
// inheritance hierarchy. A type implements an
// interface by providing implementations for the
// interface's members. An empty interface does not
// define any members, and as such, does not define
// a contract that can be implemented.
// If your design includes empty interfaces that
// types are expected to implement, you are probably
// using an interface as a marker, or a way of
// identifying a group of types. If this identification
// will occur at runtime, the correct way to accomplish
// this is to use a custom attribute. Use the presence
// or absence of the attribute, or the attribute's
// properties, to identify the target types. If the
// identification must occurs at compile time, then using
// an empty interface is acceptable.View Code Query or Rule BodyView Code Query or Rule Body
22 types matched
types | TypesThatImplementMe | Full Name |
---|---|---|
TypeExtensionsTests+IsValidStructuralTyp e+AnInterface1 | 0 type | System.Data.Entity.Utilities .TypeExtensionsTests+IsValidStructuralTy pe+AnInterface1 |
TypeExtensionsTests+TryGetElementType+IR oleCollection2014 | 1 type | System.Data.Entity.Utilities .TypeExtensionsTests+TryGetElementType+I RoleCollection2014 |
TypeExtensionsTests+GetDeclaredMethod+II nterface1 | 3 types | System.Data.Entity.Utilities .TypeExtensionsTests+GetDeclaredMethod+I Interface1 |
TypeExtensionsTests+GetDeclaredMethod+II nterface2 | 1 type | System.Data.Entity.Utilities .TypeExtensionsTests+GetDeclaredMethod+I Interface2 |
TypeExtensionsTests+GetDeclaredConstruct orsEtc+IInterface1 | 3 types | System.Data.Entity.Utilities .TypeExtensionsTests+GetDeclaredConstruc torsEtc+IInterface1 |
TypeExtensionsTests+GetDeclaredConstruct orsEtc+IInterface2 | 1 type | System.Data.Entity.Utilities .TypeExtensionsTests+GetDeclaredConstruc torsEtc+IInterface2 |
TypeExtensionsTests+IsInterface+IPython | 2 types | System.Data.Entity.Utilities .TypeExtensionsTests+IsInterface+IPython |
TypeExtensionsTests+IsAbstract+IPython | 2 types | System.Data.Entity.Utilities .TypeExtensionsTests+IsAbstract+IPython |
TypeExtensionsTests+IsSealed+IPython | 2 types | System.Data.Entity.Utilities .TypeExtensionsTests+IsSealed+IPython |
TypeExtensionsTests+IsEnum+IPython | 0 type | System.Data.Entity.Utilities .TypeExtensionsTests+IsEnum+IPython |
TypeExtensionsTests+IsPrimitive+IClease | 0 type | System.Data.Entity.Utilities .TypeExtensionsTests+IsPrimitive+IClease |
AppConfigDependencyResolverTests+IPilkin gton | 0 type | System.Data.Entity.Infrastructure .DependencyResolution .AppConfigDependencyResolverTests+IPilki ngton |
CachingDependencyResolverTests+IPilkingt on | 0 type | System.Data.Entity.Infrastructure .DependencyResolution .CachingDependencyResolverTests+IPilking ton |
CachingDependencyResolverTests+IGervais | 0 type | System.Data.Entity.Infrastructure .DependencyResolution .CachingDependencyResolverTests+IGervais |
CompositeResolverTests+IPilkington | 0 type | System.Data.Entity.Infrastructure .DependencyResolution .CompositeResolverTests+IPilkington |
DbConfigurationEventArgsTests+ReplaceSer vice+IPilkington | 0 type | System.Data.Entity.Infrastructure .DependencyResolution .DbConfigurationEventArgsTests+ReplaceSe rvice+IPilkington |
DbDependencyResolverExtensionsTests+IPil kington | 0 type | System.Data.Entity.Infrastructure .DependencyResolution .DbDependencyResolverExtensionsTests+IPi lkington |
ResolverChainTests+IPilkington | 1 type | System.Data.Entity.Infrastructure .DependencyResolution .ResolverChainTests+IPilkington |
SingletonDependencyResolverTests+IPilkin gton | 0 type | System.Data.Entity.Infrastructure .DependencyResolution .SingletonDependencyResolverTests+IPilki ngton |
SingletonDependencyResolverTests+IGervai s | 0 type | System.Data.Entity.Infrastructure .DependencyResolution .SingletonDependencyResolverTests+IGerva is |
WrappingDependencyResolverTests+IPilking ton | 0 type | System.Data.Entity.Infrastructure .DependencyResolution .WrappingDependencyResolverTests+IPilkin gton |
HandlerBaseTests+ICustomHandler | 0 type | System.Data.Entity.Infrastructure.Design .HandlerBaseTests+ICustomHandler |
Statistics
Stat | TypesThatImplementMe |
---|---|
Sum: | 0 |
Average: | 0 |
Minimum: | 0 |
Maximum: | 0 |
Standard deviation: | 0 |
Variance: | 0 |
3101
Design |
|
![]() | Query error: Types with disposable instance fields must be disposable |
Content of the Rule or Query
warnif count > 0
let iDisposable = ThirdParty.Types.WithFullName("System.IDisposable").FirstOrDefault()
where iDisposable != null // iDisposable can be null if the code base doesn't use at all System.IDisposable
from t in Application.Types where
!t.Implement(iDisposable) &&
!t.IsGeneratedByCompiler
let instanceFieldsDisposable =
t.InstanceFields.Where(f => f.FieldType != null &&
f.FieldType.Implement(iDisposable))
where instanceFieldsDisposable.Count() > 0
select new { t, instanceFieldsDisposable }View Code Query or Rule BodyView Code Query or Rule Body
![]() | Rule warning: Classes that are candidate to be turned into structures |
//
// CAUTION: Before applying this rule, make sure to understand
// the implication of transforming a class into a structure.
// http://msdn.microsoft.com/en-us/library/aa664471(v=vs.71).aspx
//
// Int32, Double or Boolean are structures and not classes.
// Structure are particularly suited to implement lightweight values.
// Hence a class is candidate to be turned into a structure
// when its instances are lightweight values.
//
warnif count > 0 from t in JustMyCode.Types where
t.IsClass &&
!t.IsGeneratedByCompiler &&
!t.IsStatic &&
t.SizeOfInst > 0 &&
t.SizeOfInst <= 16 && // Structure instance must not be too big,
// else it degrades performance.
t.NbChildren == 0 && // Must not have children
// Must not implement interfaces to avoid boxing mismatch
// when structures implements interfaces.
t.InterfacesImplemented.Count() == 0 &&
// Must have no base class
t.DepthOfDeriveFrom("System.Object".AllowNoMatch()) == 1
select new { t, t.SizeOfInst, t.InstanceFields } // Must derive directly from System.Object
// && t.IsSealed <-- You might want to add this condition
// to restraint the set.
// && t.IsImmutable <-- Structures should be immutable type.
// && t.!IsPublic <-- You might want to add this condition if
// you are developping a framework with classes
// that are intended to be sub-classed by
// your clients.
View Code Query or Rule BodyView Code Query or Rule Body
706 types matched
types | Size of instance | InstanceFields | Full Name |
---|---|---|---|
CsdlToClrAssemblyConverter | 9 | 3 fields | System.Data.Entity .CsdlToClrAssemblyConverter |
DynamicAssembly | 16 | 4 fields | System.Data.Entity.DynamicAssembly |
DynamicField | 10 | 4 fields | System.Data.Entity.DynamicField |
AssemblyResourceLookup | 8 | 2 fields | System.Data.Entity .AssemblyResourceLookup |
ConnectionEventsTracker | 12 | 3 fields | System.Data.Entity .ConnectionEventsTracker |
ModelAssertions+CompositeParameterAssert ions | 4 | 1 field | System.Data.Entity .ModelAssertions+CompositeParameterAsser tions |
ModelAssertions+ColumnAssertions | 4 | 1 field | System.Data.Entity .ModelAssertions+ColumnAssertions |
ModelAssertions+PropertyAssertions | 8 | 2 fields | System.Data.Entity .ModelAssertions+PropertyAssertions |
ModelAssertions+TypeAssertions | 12 | 3 fields | System.Data.Entity .ModelAssertions+TypeAssertions |
ModelAssertions+MappingFragmentAssertion s | 4 | 1 field | System.Data.Entity .ModelAssertions+MappingFragmentAssertio ns |
StringResourceVerifier | 4 | 1 field | System.Data.Entity .StringResourceVerifier |
StringResourceVerifier+StringSection | 8 | 2 fields | System.Data.Entity .StringResourceVerifier+StringSection |
TypeAssertion<TStructuralType> | 4 | 1 field | System.Data.Entity.TypeAssertion <TStructuralType> |
TableSplittingTests+E3 | 12 | 3 fields | System.Data.Entity.CodeFirst .TableSplittingTests+E3 |
TableSplittingTests+Z | 12 | 3 fields | System.Data.Entity.CodeFirst .TableSplittingTests+Z |
TableInfo | 16 | 4 fields | System.Data.Entity.Migrations.TableInfo |
MigrationsAddress | 4 | 1 field | System.Data.Entity.Migrations .MigrationsAddress |
Order | 16 | 4 fields | System.Data.Entity.Migrations.Order |
MigrationsProduct | 16 | 4 fields | System.Data.Entity.Migrations .MigrationsProduct |
MigrationsBlog | 8 | 2 fields | System.Data.Entity.Migrations .MigrationsBlog |
Comment | 13 | 3 fields | System.Data.Entity.Migrations.Comment |
Role | 12 | 2 fields | System.Data.Entity.Migrations .UserRoles_v1.Role |
User | 12 | 2 fields | System.Data.Entity.Migrations .UserRoles_v1.User |
Role | 12 | 2 fields | System.Data.Entity.Migrations .UserRoles_v2.Role |
User2 | 12 | 2 fields | System.Data.Entity.Migrations .UserRoles_v2.User2 |
TableRenameManyManyLeft1 | 8 | 2 fields | System.Data.Entity.Migrations .OSpaceRenames_v1 .TableRenameManyManyLeft1 |
TableRenameManyManyRight | 8 | 2 fields | System.Data.Entity.Migrations .OSpaceRenames_v1 .TableRenameManyManyRight |
TableRenameEntitySplit1 | 8 | 2 fields | System.Data.Entity.Migrations .OSpaceRenames_v1 .TableRenameEntitySplit1 |
TableRenameTableSplit1 | 8 | 2 fields | System.Data.Entity.Migrations .OSpaceRenames_v1.TableRenameTableSplit1 |
TableRenameTableSplitPayload1 | 4 | 1 field | System.Data.Entity.Migrations .OSpaceRenames_v1 .TableRenameTableSplitPayload1 |
ComplexType | 4 | 1 field | System.Data.Entity.Migrations .OSpaceRenames_v1.ComplexType |
IaParent | 8 | 2 fields | System.Data.Entity.Migrations .OSpaceRenames_v1.IaParent |
OrphanedColumn1 | 12 | 3 fields | System.Data.Entity.Migrations .OSpaceRenames_v1.OrphanedColumn1 |
OrphanedColumnParent | 4 | 1 field | System.Data.Entity.Migrations .OSpaceRenames_v1.OrphanedColumnParent |
TableRenameManyManyLeft2 | 8 | 2 fields | System.Data.Entity.Migrations .OSpaceRenames_v2 .TableRenameManyManyLeft2 |
TableRenameManyManyRight | 8 | 2 fields | System.Data.Entity.Migrations .OSpaceRenames_v2 .TableRenameManyManyRight |
TableRenameEntitySplit2 | 8 | 2 fields | System.Data.Entity.Migrations .OSpaceRenames_v2 .TableRenameEntitySplit2 |
TableRenameTableSplit2 | 8 | 2 fields | System.Data.Entity.Migrations .OSpaceRenames_v2.TableRenameTableSplit2 |
TableRenameTableSplitPayload2 | 4 | 1 field | System.Data.Entity.Migrations .OSpaceRenames_v2 .TableRenameTableSplitPayload2 |
ComplexType | 4 | 1 field | System.Data.Entity.Migrations .OSpaceRenames_v2.ComplexType |
IaParent | 8 | 2 fields | System.Data.Entity.Migrations .OSpaceRenames_v2.IaParent |
OrphanedColumn2 | 12 | 3 fields | System.Data.Entity.Migrations .OSpaceRenames_v2.OrphanedColumn2 |
OrphanedColumnParent | 4 | 1 field | System.Data.Entity.Migrations .OSpaceRenames_v2.OrphanedColumnParent |
AdvancedMappingScenarioTests+SomeRole | 12 | 3 fields | FunctionalTests .AdvancedMappingScenarioTests+SomeRole |
AdvancedMappingScenarioTests+SomeUser | 12 | 3 fields | FunctionalTests .AdvancedMappingScenarioTests+SomeUser |
AdvancedMappingScenarioTests+UserRole | 16 | 4 fields | FunctionalTests .AdvancedMappingScenarioTests+UserRole |
AdvancedMappingScenarioTests+MaxLengthPr operties | 12 | 3 fields | FunctionalTests .AdvancedMappingScenarioTests+MaxLengthP roperties |
AdvancedMappingScenarioTests+EntityWithC onfiguredDuplicateColumn | 12 | 3 fields | FunctionalTests .AdvancedMappingScenarioTests+EntityWith ConfiguredDuplicateColumn |
AdvancedMappingScenarioTests+ComplexWith Desc | 4 | 1 field | FunctionalTests .AdvancedMappingScenarioTests+ComplexWit hDesc |
AdvancedMappingScenarioTests+SplitProduc t | 12 | 3 fields | FunctionalTests .AdvancedMappingScenarioTests+SplitProdu ct |
AdvancedMappingScenarioTests+SplitProduc tDetail | 12 | 3 fields | FunctionalTests .AdvancedMappingScenarioTests+SplitProdu ctDetail |
AdvancedMappingScenarioTests+SingleAbstr act | 8 | 2 fields | FunctionalTests .AdvancedMappingScenarioTests+SingleAbst ract |
AdvancedMappingScenarioTests+StockOrder | 16 | 4 fields | FunctionalTests .AdvancedMappingScenarioTests+StockOrder |
AdvancedMappingScenarioTests+Organizatio n | 16 | 4 fields | FunctionalTests .AdvancedMappingScenarioTests+Organizati on |
AdvancedMappingScenarioTests+Location | 16 | 4 fields | FunctionalTests .AdvancedMappingScenarioTests+Location |
AdvancedMappingScenarioTests+CodePlex218 1+LoginInformation | 4 | 1 field | FunctionalTests .AdvancedMappingScenarioTests+CodePlex21 81+LoginInformation |
AssociationScenarioTests+Dependent_17294 9 | 10 | 3 fields | FunctionalTests .AssociationScenarioTests+Dependent_1729 49 |
AssociationScenarioTests+Principal_17294 9 | 9 | 2 fields | FunctionalTests .AssociationScenarioTests+Principal_1729 49 |
AssociationScenarioTests+Principal_15900 1 | 4 | 1 field | FunctionalTests .AssociationScenarioTests+Principal_1590 01 |
AssociationScenarioTests+Dependent_15900 1a | 8 | 2 fields | FunctionalTests .AssociationScenarioTests+Dependent_1590 01a |
AssociationScenarioTests+Dependent_15900 1b | 8 | 2 fields | FunctionalTests .AssociationScenarioTests+Dependent_1590 01b |
AssociationScenarioTests+PrincipalWithNa v_159001a | 8 | 2 fields | FunctionalTests .AssociationScenarioTests+PrincipalWithN av_159001a |
AssociationScenarioTests+DependentWithNa v_159001a | 8 | 2 fields | FunctionalTests .AssociationScenarioTests+DependentWithN av_159001a |
AssociationScenarioTests+Principal_18190 9 | 8 | 2 fields | FunctionalTests .AssociationScenarioTests+Principal_1819 09 |
AssociationScenarioTests+Dependent_18190 9 | 12 | 3 fields | FunctionalTests .AssociationScenarioTests+Dependent_1819 09 |
AssociationScenarioTests+Order_181909 | 12 | 3 fields | FunctionalTests .AssociationScenarioTests+Order_181909 |
AssociationScenarioTests+Dependent_16234 8 | 11 | 3 fields | FunctionalTests .AssociationScenarioTests+Dependent_1623 48 |
AssociationScenarioTests+Dependent_6927 | 12 | 3 fields | FunctionalTests .AssociationScenarioTests+Dependent_6927 |
AssociationScenarioTests+Principal_6927 | 8 | 2 fields | FunctionalTests .AssociationScenarioTests+Principal_6927 |
AssociationScenarioTests+DependentWithNu llableFkIdentifying | 9 | 2 fields | FunctionalTests .AssociationScenarioTests+DependentWithN ullableFkIdentifying |
AssociationScenarioTests+PrincipalWithNu llableFkIdentifying | 9 | 2 fields | FunctionalTests .AssociationScenarioTests+PrincipalWithN ullableFkIdentifying |
AssociationScenarioTests+DependentWithNu llableFk | 12 | 3 fields | FunctionalTests .AssociationScenarioTests+DependentWithN ullableFk |
AssociationScenarioTests+PrincipalWithNu llableFk | 8 | 2 fields | FunctionalTests .AssociationScenarioTests+PrincipalWithN ullableFk |
AssociationScenarioTests+ProductManyToMa nyTableNaming | 12 | 3 fields | FunctionalTests .AssociationScenarioTests+ProductManyToM anyTableNaming |
AssociationScenarioTests+SupplierManyToM anyTableNaming | 12 | 3 fields | FunctionalTests .AssociationScenarioTests+SupplierManyTo ManyTableNaming |
AssociationScenarioTests+Principal144934 | 8 | 2 fields | FunctionalTests .AssociationScenarioTests+Principal14493 4 |
AssociationScenarioTests+Dependent144934 | 8 | 2 fields | FunctionalTests .AssociationScenarioTests+Dependent14493 4 |
AssociationScenarioTests+Dependent144843 | 12 | 3 fields | FunctionalTests .AssociationScenarioTests+Dependent14484 3 |
AssociationScenarioTests+Principal144843 | 12 | 3 fields | FunctionalTests .AssociationScenarioTests+Principal14484 3 |
AssociationScenarioTests+DependentSelfRe fInverseRequired | 16 | 4 fields | FunctionalTests .AssociationScenarioTests+DependentSelfR efInverseRequired |
AssociationScenarioTests+DependentWeirdK eyOrder | 12 | 3 fields | FunctionalTests .AssociationScenarioTests+DependentWeird KeyOrder |
AssociationScenarioTests+DependentWeirdK eyOrder2 | 12 | 3 fields | FunctionalTests .AssociationScenarioTests+DependentWeird KeyOrder2 |
AssociationScenarioTests+PrincipalWeirdK eyOrder | 8 | 2 fields | FunctionalTests .AssociationScenarioTests+PrincipalWeird KeyOrder |
AssociationScenarioTests+PrincipalNoPrin cipalNav | 5 | 1 field | FunctionalTests .AssociationScenarioTests+PrincipalNoPri ncipalNav |
AssociationScenarioTests+PrincipalPrinci palNavOptional | 14 | 3 fields | FunctionalTests .AssociationScenarioTests+PrincipalPrinc ipalNavOptional |
AssociationScenarioTests+PrincipalPrinci palNavRequired | 9 | 2 fields | FunctionalTests .AssociationScenarioTests+PrincipalPrinc ipalNavRequired |
AssociationScenarioTests+PrincipalPrinci palNavRequiredDependent | 9 | 2 fields | FunctionalTests .AssociationScenarioTests+PrincipalPrinc ipalNavRequiredDependent |
AssociationScenarioTests+PrincipalByteKe y | 8 | 2 fields | FunctionalTests .AssociationScenarioTests+PrincipalByteK ey |
AssociationScenarioTests+DependentByteKe y | 8 | 2 fields | FunctionalTests .AssociationScenarioTests+DependentByteK ey |
AssociationScenarioTests+PrincipalWithCo mpositeAnnotatedDependent | 16 | 4 fields | FunctionalTests .AssociationScenarioTests+PrincipalWithC ompositeAnnotatedDependent |
AssociationScenarioTests+CompositeAnnota tedDependent | 16 | 4 fields | FunctionalTests .AssociationScenarioTests+CompositeAnnot atedDependent |
AssociationScenarioTests+CompositePartia llyAnnotatedDependent | 16 | 4 fields | FunctionalTests .AssociationScenarioTests+CompositeParti allyAnnotatedDependent |
AssociationScenarioTests+PrincipalWithAn notatedDependent | 8 | 2 fields | FunctionalTests .AssociationScenarioTests+PrincipalWithA nnotatedDependent |
AssociationScenarioTests+AnnotatedDepend ent | 8 | 2 fields | FunctionalTests .AssociationScenarioTests+AnnotatedDepen dent |
AssociationScenarioTests+AnnotatedDepend entWrong | 8 | 2 fields | FunctionalTests .AssociationScenarioTests+AnnotatedDepen dentWrong |
AssociationScenarioTests+SomeItem | 8 | 2 fields | FunctionalTests .AssociationScenarioTests+SomeItem |
AssociationScenarioTests+SomeItemDetail | 8 | 2 fields | FunctionalTests .AssociationScenarioTests+SomeItemDetail |
AssociationScenarioTests+Principal | 8 | 2 fields | FunctionalTests .AssociationScenarioTests+Principal |
AssociationScenarioTests+Dependent | 8 | 2 fields | FunctionalTests .AssociationScenarioTests+Dependent |
AssociationScenarioTests+One | 8 | 2 fields | FunctionalTests .AssociationScenarioTests+One |
Statistics
Stat | Size of instance | InstanceFields |
---|---|---|
Sum: | 6 374 | 0 |
Average: | 9.03 | 0 |
Minimum: | 1 | 0 |
Maximum: | 16 | 0 |
Standard deviation: | 3.8 | 0 |
Variance: | 14.43 | 0 |
![]() | Rule warning: Avoid namespaces with few types |
warnif count > 0 from n in JustMyCode.Namespaces
let types = n.ChildTypes.Where(t => !t.IsGeneratedByCompiler)
where
types.Count() < 5
orderby types.Count() ascending
select new { n, types }
// Make sure that there is a logical organization
// to each of your namespaces, and that there is a
// valid reason for putting types in a sparsely
// populated namespace. Namespaces should contain
// types that are used together in most scenarios.
// When their applications are mutually exclusive,
// types should be located in separate namespacesView Code Query or Rule BodyView Code Query or Rule Body
76 namespaces matched
namespaces | types | Full Name |
---|---|---|
0 type | ||
0 type | ||
System.Data.Entity.MetadataMapping | 1 type | System.Data.Entity.MetadataMapping |
FunctionalTests.Bug223284A | 1 type | FunctionalTests.Bug223284A |
System.Data.Entity.Query | 1 type | System.Data.Entity.Query |
System.Data.Entity.Meta | 1 type | System.Data.Entity.Meta |
System.Data.Entity.Migrations.NotReady | 1 type | System.Data.Entity.Migrations.NotReady |
System.Data.Entity.Migrations .CustomOperations | 1 type | System.Data.Entity.Migrations .CustomOperations |
NamespaceForEntities1 | 1 type | NamespaceForEntities1 |
NamespaceForEntities2 | 1 type | NamespaceForEntities2 |
____._____.__ | 1 type | ____._____.__ |
__This.Is_3_Not.Compl3t3ly.Invalid | 1 type | __This.Is_3_Not.Compl3t3ly.Invalid |
_3Unicorns.Starts.With.Underscrore.Digit | 1 type | _3Unicorns.Starts.With.Underscrore.Digit |
System.Data.Entity.CommandLine | 1 type | System.Data.Entity.CommandLine |
System.Data.Entity.Edm | 1 type | System.Data.Entity.Edm |
System.Data.Entity.Properties | 1 type | System.Data.Entity.Properties |
System.Data.Entity.Core.Common.Utils | 1 type | System.Data.Entity.Core.Common.Utils |
System.Data.Entity.Core.Common .CommandTrees.Internal | 1 type | System.Data.Entity.Core.Common .CommandTrees.Internal |
System.Data.Entity.Core.Common .CommandTrees.Enums .MembersWithSameValues | 1 type | System.Data.Entity.Core.Common .CommandTrees.Enums .MembersWithSameValues |
System.Data.Entity.Core.Common .CommandTrees.Enums.MissingMember | 1 type | System.Data.Entity.Core.Common .CommandTrees.Enums.MissingMember |
System.Data.Entity.Core.Common .CommandTrees.Enums.AdditionalMember | 1 type | System.Data.Entity.Core.Common .CommandTrees.Enums.AdditionalMember |
System.Data.Entity.Core.Common .CommandTrees.Enums .DifferentUnderlyingTypes | 1 type | System.Data.Entity.Core.Common .CommandTrees.Enums .DifferentUnderlyingTypes |
System.Data.Entity.Core.Common .CommandTrees.Enums .NonEdmCompatibleUnderlyingType | 1 type | System.Data.Entity.Core.Common .CommandTrees.Enums .NonEdmCompatibleUnderlyingType |
System.Data.Entity.Core.Common .CommandTrees.Enums.NonExistingMember | 1 type | System.Data.Entity.Core.Common .CommandTrees.Enums.NonExistingMember |
System.Data.Entity.Core.Common .CommandTrees.Enums.DifferentMemberValue | 1 type | System.Data.Entity.Core.Common .CommandTrees.Enums.DifferentMemberValue |
System.Data.Entity.Core.Common .CommandTrees.Enums.SwapedMembersValues | 1 type | System.Data.Entity.Core.Common .CommandTrees.Enums.SwapedMembersValues |
System.Data.Entity.Core.EntityClient .Internal | 1 type | System.Data.Entity.Core.EntityClient .Internal |
System.Data.Entity.Core.Mapping .ViewGeneration.Utils | 1 type | System.Data.Entity.Core.Mapping .ViewGeneration.Utils |
System.Data.Entity.Core.Query | 1 type | System.Data.Entity.Core.Query |
System.Data.Entity.Core.Query .InternalTrees | 1 type | System.Data.Entity.Core.Query .InternalTrees |
System.Data.Entity.Core.Query .PlanCompiler | 1 type | System.Data.Entity.Core.Query .PlanCompiler |
System.Data.Entity.ModelConfiguration .Edm.Serialization | 1 type | System.Data.Entity.ModelConfiguration .Edm.Serialization |
System.Data.Entity.Migrations.Edm | 1 type | System.Data.Entity.Migrations.Edm |
System.Data.Entity.Migrations.History | 1 type | System.Data.Entity.Migrations.History |
System.Data.Entity.Design | 2 types | System.Data.Entity.Design |
System.Data.Entity.Migrations .UserRoles_v1 | 2 types | System.Data.Entity.Migrations .UserRoles_v1 |
System.Data.Entity.Migrations .UserRoles_v2 | 2 types | System.Data.Entity.Migrations .UserRoles_v2 |
2 types | ||
System.Data.Entity.SqlServerCompact | 2 types | System.Data.Entity.SqlServerCompact |
InvalidTypeModel | 2 types | InvalidTypeModel |
UnSpecifiedOrderingModel | 2 types | UnSpecifiedOrderingModel |
2 types | ||
System.Data.Entity.Core .SchemaObjectModel | 2 types | System.Data.Entity.Core .SchemaObjectModel |
System.Data.Entity.Core.Mapping .ViewGeneration | 2 types | System.Data.Entity.Core.Mapping .ViewGeneration |
System.Data.Entity.Core.Query .ResultAssembly | 2 types | System.Data.Entity.Core.Query .ResultAssembly |
System.Data.Entity.Infrastructure .Transactions | 2 types | System.Data.Entity.Infrastructure .Transactions |
System.Data.Entity.Infrastructure .Pluralization | 2 types | System.Data.Entity.Infrastructure .Pluralization |
System.Data.Entity.ModelConfiguration .Edm.Common | 2 types | System.Data.Entity.ModelConfiguration .Edm.Common |
System.Data.Entity.Migrations .Infrastructure.Tph_to_tpt_v1 | 2 types | System.Data.Entity.Migrations .Infrastructure.Tph_to_tpt_v1 |
System.Data.Entity.Migrations .Infrastructure.Renamed_ia_pk_v1 | 2 types | System.Data.Entity.Migrations .Infrastructure.Renamed_ia_pk_v1 |
System.Data.Entity.Migrations .Infrastructure.Renamed_ia_pk_v2 | 2 types | System.Data.Entity.Migrations .Infrastructure.Renamed_ia_pk_v2 |
System.ComponentModel.DataAnnotations | 2 types | System.ComponentModel.DataAnnotations |
FunctionalTests.Bug223284B | 3 types | FunctionalTests.Bug223284B |
FunctionalTests.Bug336706 | 3 types | FunctionalTests.Bug336706 |
ProductivityApiTests | 3 types | ProductivityApiTests |
System.Data.Entity.Configuration | 3 types | System.Data.Entity.Configuration |
System.Data.Entity.EntityClient | 3 types | System.Data.Entity.EntityClient |
System.Data.Entity.TestModels .ArubaCeModel | 3 types | System.Data.Entity.TestModels .ArubaCeModel |
NamespaceForContext | 3 types | NamespaceForContext |
System.Data.Entity.ModelConfiguration .Configuration.Mapping | 3 types | System.Data.Entity.ModelConfiguration .Configuration.Mapping |
System.Data.Entity.ModelConfiguration .Configuration.Types | 3 types | System.Data.Entity.ModelConfiguration .Configuration.Types |
System.Data.Entity.ModelConfiguration .Edm.Db | 3 types | System.Data.Entity.ModelConfiguration .Edm.Db |
System.Data.Entity.ModelConfiguration .Edm.Db.Mapping | 3 types | System.Data.Entity.ModelConfiguration .Edm.Db.Mapping |
System.Data.Entity.Migrations .Infrastructure.Tph_to_tpt_v2 | 3 types | System.Data.Entity.Migrations .Infrastructure.Tph_to_tpt_v2 |
System.Data.Entity.SqlServerCompact .SqlGen | 3 types | System.Data.Entity.SqlServerCompact .SqlGen |
FunctionalTests.Bug178568 | 4 types | FunctionalTests.Bug178568 |
FunctionalTests.Bug336566 | 4 types | FunctionalTests.Bug336566 |
FunctionalTests.Bug339467 | 4 types | FunctionalTests.Bug339467 |
System.Data.Entity.Migrations .UpDownUpPartial | 4 types | System.Data.Entity.Migrations .UpDownUpPartial |
PlanCompilerTests | 4 types | PlanCompilerTests |
FunctionalTests.Model | 4 types | FunctionalTests.Model |
TheMoon | 4 types | TheMoon |
TheEarth | 4 types | TheEarth |
BadMappingModel | 4 types | BadMappingModel |
System.Data.Entity.ModelConfiguration .Configuration.Conventions | 4 types | System.Data.Entity.ModelConfiguration .Configuration.Conventions |
CmdLine | 4 types | CmdLine |
Statistics
Stat | types |
---|---|
Sum: | 0 |
Average: | 0 |
Minimum: | 0 |
Maximum: | 0 |
Standard deviation: | 0 |
Variance: | 0 |
![]() | Rule warning: Nested types should not be visible |
warnif count > 0 from t in JustMyCode.Types where
t.IsNested &&
!t.IsGeneratedByCompiler &&
!t.IsPrivate
select new { t, t.NbLinesOfCode, t.Visibility }
// A nested type is a type declared within the
// scope of another type. Nested types are useful
// for encapsulating private implementation details
// of the containing type. Used for this purpose,
// nested types should not be externally visible.
// Do not use externally visible nested types for
// logical grouping or to avoid name collisions;
// instead, use namespaces.View Code Query or Rule BodyView Code Query or Rule Body
2,472 types matched
types | # lines of code (LOC) | Visibility | Full Name |
---|---|---|---|
ModelAssertions+CompositeParameterAssert ions | 9 | Internal | System.Data.Entity .ModelAssertions+CompositeParameterAsser tions |
ModelAssertions+ColumnAssertions | 16 | Internal | System.Data.Entity .ModelAssertions+ColumnAssertions |
ModelAssertions+PropertyAssertions | 31 | Internal | System.Data.Entity .ModelAssertions+PropertyAssertions |
ModelAssertions+TypeAssertions | 36 | Internal | System.Data.Entity .ModelAssertions+TypeAssertions |
ModelAssertions+MappingFragmentAssertion s | 12 | Internal | System.Data.Entity .ModelAssertions+MappingFragmentAssertio ns |
TableSplittingTests+E1 | 0 | Public | System.Data.Entity.CodeFirst .TableSplittingTests+E1 |
TableSplittingTests+E2 | 0 | Public | System.Data.Entity.CodeFirst .TableSplittingTests+E2 |
TableSplittingTests+E3 | 0 | Public | System.Data.Entity.CodeFirst .TableSplittingTests+E3 |
TableSplittingTests+A | 0 | Public | System.Data.Entity.CodeFirst .TableSplittingTests+A |
TableSplittingTests+B | 0 | Public | System.Data.Entity.CodeFirst .TableSplittingTests+B |
TableSplittingTests+B1 | 0 | Public | System.Data.Entity.CodeFirst .TableSplittingTests+B1 |
TableSplittingTests+C | 0 | Public | System.Data.Entity.CodeFirst .TableSplittingTests+C |
TableSplittingTests+C1 | 0 | Public | System.Data.Entity.CodeFirst .TableSplittingTests+C1 |
TableSplittingTests+Z | 0 | Public | System.Data.Entity.CodeFirst .TableSplittingTests+Z |
TptMappingTests+A | 0 | Public | System.Data.Entity.CodeFirst .TptMappingTests+A |
TptMappingTests+AA | 0 | Public | System.Data.Entity.CodeFirst .TptMappingTests+AA |
TptMappingTests+AB | 0 | Public | System.Data.Entity.CodeFirst .TptMappingTests+AB |
TptMappingTests+B | 0 | Public | System.Data.Entity.CodeFirst .TptMappingTests+B |
TptMappingTests+BA | 0 | Public | System.Data.Entity.CodeFirst .TptMappingTests+BA |
TptMappingTests+BB | 0 | Public | System.Data.Entity.CodeFirst .TptMappingTests+BB |
AdvancedMappingScenarioTests+SomeRole | 0 | Public | FunctionalTests .AdvancedMappingScenarioTests+SomeRole |
AdvancedMappingScenarioTests+SomeUser | 0 | Public | FunctionalTests .AdvancedMappingScenarioTests+SomeUser |
AdvancedMappingScenarioTests+UserRole | 0 | Public | FunctionalTests .AdvancedMappingScenarioTests+UserRole |
AdvancedMappingScenarioTests+MaxLengthPr operties | 0 | Public | FunctionalTests .AdvancedMappingScenarioTests+MaxLengthP roperties |
AdvancedMappingScenarioTests+EntityWithC onfiguredDuplicateColumn | 0 | Public | FunctionalTests .AdvancedMappingScenarioTests+EntityWith ConfiguredDuplicateColumn |
AdvancedMappingScenarioTests+EntityWithD escBase | 0 | Public | FunctionalTests .AdvancedMappingScenarioTests+EntityWith DescBase |
AdvancedMappingScenarioTests+EntityWithD escA | 0 | Public | FunctionalTests .AdvancedMappingScenarioTests+EntityWith DescA |
AdvancedMappingScenarioTests+EntityWithD escB | 0 | Public | FunctionalTests .AdvancedMappingScenarioTests+EntityWith DescB |
AdvancedMappingScenarioTests+EntityWithD escC | 0 | Public | FunctionalTests .AdvancedMappingScenarioTests+EntityWith DescC |
AdvancedMappingScenarioTests+ComplexWith Desc | 0 | Public | FunctionalTests .AdvancedMappingScenarioTests+ComplexWit hDesc |
AdvancedMappingScenarioTests+SplitProduc t | 0 | Public | FunctionalTests .AdvancedMappingScenarioTests+SplitProdu ct |
AdvancedMappingScenarioTests+SplitProduc tDetail | 0 | Public | FunctionalTests .AdvancedMappingScenarioTests+SplitProdu ctDetail |
AdvancedMappingScenarioTests+DecimalKey | 0 | Public | FunctionalTests .AdvancedMappingScenarioTests+DecimalKey |
AdvancedMappingScenarioTests+DecimalDepe ndent | 0 | Public | FunctionalTests .AdvancedMappingScenarioTests+DecimalDep endent |
AdvancedMappingScenarioTests+SingleAbstr act | 0 | Public | FunctionalTests .AdvancedMappingScenarioTests+SingleAbst ract |
AdvancedMappingScenarioTests+StockOrder | 0 | Public | FunctionalTests .AdvancedMappingScenarioTests+StockOrder |
AdvancedMappingScenarioTests+Organizatio n | 0 | Public | FunctionalTests .AdvancedMappingScenarioTests+Organizati on |
AdvancedMappingScenarioTests+Location | 0 | Public | FunctionalTests .AdvancedMappingScenarioTests+Location |
AdvancedMappingScenarioTests+CodePlex218 1 | 8 | Public | FunctionalTests .AdvancedMappingScenarioTests+CodePlex21 81 |
AdvancedMappingScenarioTests+CodePlex218 1+User | 0 | Public | FunctionalTests .AdvancedMappingScenarioTests+CodePlex21 81+User |
AdvancedMappingScenarioTests+CodePlex218 1+LoginInformation | 0 | Public | FunctionalTests .AdvancedMappingScenarioTests+CodePlex21 81+LoginInformation |
AdvancedMappingScenarioTests+CodePlex218 1+LoggableUser | 0 | Public | FunctionalTests .AdvancedMappingScenarioTests+CodePlex21 81+LoggableUser |
AdvancedMappingScenarioTests+CodePlex218 1+Administrator | 0 | Public | FunctionalTests .AdvancedMappingScenarioTests+CodePlex21 81+Administrator |
AssociationScenarioTests+Dependent_17294 9 | 0 | Public | FunctionalTests .AssociationScenarioTests+Dependent_1729 49 |
AssociationScenarioTests+Principal_17294 9 | 0 | Public | FunctionalTests .AssociationScenarioTests+Principal_1729 49 |
AssociationScenarioTests+Principal_15900 1 | 0 | Public | FunctionalTests .AssociationScenarioTests+Principal_1590 01 |
AssociationScenarioTests+Dependent_15900 1a | 0 | Public | FunctionalTests .AssociationScenarioTests+Dependent_1590 01a |
AssociationScenarioTests+Dependent_15900 1b | 0 | Public | FunctionalTests .AssociationScenarioTests+Dependent_1590 01b |
AssociationScenarioTests+PrincipalWithNa v_159001a | 0 | Public | FunctionalTests .AssociationScenarioTests+PrincipalWithN av_159001a |
AssociationScenarioTests+DependentWithNa v_159001a | 0 | Public | FunctionalTests .AssociationScenarioTests+DependentWithN av_159001a |
AssociationScenarioTests+Principal_18190 9 | 0 | Public | FunctionalTests .AssociationScenarioTests+Principal_1819 09 |
AssociationScenarioTests+Dependent_18190 9 | 0 | Public | FunctionalTests .AssociationScenarioTests+Dependent_1819 09 |
AssociationScenarioTests+Order_181909 | 0 | Public | FunctionalTests .AssociationScenarioTests+Order_181909 |
AssociationScenarioTests+OrderLine_18190 9 | 0 | Public | FunctionalTests .AssociationScenarioTests+OrderLine_1819 09 |
AssociationScenarioTests+Dependent_16234 8 | 0 | Public | FunctionalTests .AssociationScenarioTests+Dependent_1623 48 |
AssociationScenarioTests+Dependent_6927 | 0 | Public | FunctionalTests .AssociationScenarioTests+Dependent_6927 |
AssociationScenarioTests+Principal_6927 | 0 | Public | FunctionalTests .AssociationScenarioTests+Principal_6927 |
AssociationScenarioTests+DependentWithNu llableFkIdentifying | 0 | Public | FunctionalTests .AssociationScenarioTests+DependentWithN ullableFkIdentifying |
AssociationScenarioTests+PrincipalWithNu llableFkIdentifying | 0 | Public | FunctionalTests .AssociationScenarioTests+PrincipalWithN ullableFkIdentifying |
AssociationScenarioTests+DependentWithNu llableFk | 0 | Public | FunctionalTests .AssociationScenarioTests+DependentWithN ullableFk |
AssociationScenarioTests+PrincipalWithNu llableFk | 0 | Public | FunctionalTests .AssociationScenarioTests+PrincipalWithN ullableFk |
AssociationScenarioTests+ProductManyToMa nyTableNaming | 0 | Public | FunctionalTests .AssociationScenarioTests+ProductManyToM anyTableNaming |
AssociationScenarioTests+SupplierManyToM anyTableNaming | 0 | Public | FunctionalTests .AssociationScenarioTests+SupplierManyTo ManyTableNaming |
AssociationScenarioTests+Principal144934 | 0 | Public | FunctionalTests .AssociationScenarioTests+Principal14493 4 |
AssociationScenarioTests+Dependent144934 | 0 | Public | FunctionalTests .AssociationScenarioTests+Dependent14493 4 |
AssociationScenarioTests+Dependent144843 | 0 | Public | FunctionalTests .AssociationScenarioTests+Dependent14484 3 |
AssociationScenarioTests+Principal144843 | 0 | Public | FunctionalTests .AssociationScenarioTests+Principal14484 3 |
AssociationScenarioTests+DependentManyTo ManySelf | 0 | Public | FunctionalTests .AssociationScenarioTests+DependentManyT oManySelf |
AssociationScenarioTests+DerivedDependen tManyToManySelf | 0 | Public | FunctionalTests .AssociationScenarioTests+DerivedDepende ntManyToManySelf |
AssociationScenarioTests+DependentSelfRe fInverseRequired | 0 | Public | FunctionalTests .AssociationScenarioTests+DependentSelfR efInverseRequired |
AssociationScenarioTests+BaseDependentAb stractKeyOrder | 0 | Public | FunctionalTests .AssociationScenarioTests+BaseDependentA bstractKeyOrder |
AssociationScenarioTests+DependentAbstra ctKeyOrder | 0 | Public | FunctionalTests .AssociationScenarioTests+DependentAbstr actKeyOrder |
AssociationScenarioTests+BasePrincipalAb stractKeyOrder | 0 | Public | FunctionalTests .AssociationScenarioTests+BasePrincipalA bstractKeyOrder |
AssociationScenarioTests+PrincipalAbstra ctKeyOrder | 0 | Public | FunctionalTests .AssociationScenarioTests+PrincipalAbstr actKeyOrder |
AssociationScenarioTests+DerivedPrincipa lKeyOrder | 0 | Public | FunctionalTests .AssociationScenarioTests+DerivedPrincip alKeyOrder |
AssociationScenarioTests+DerivedDependen tKeyOrder | 0 | Public | FunctionalTests .AssociationScenarioTests+DerivedDepende ntKeyOrder |
AssociationScenarioTests+DependentSelfRe fInverse | 0 | Public | FunctionalTests .AssociationScenarioTests+DependentSelfR efInverse |
AssociationScenarioTests+DerivedDependen tSelfRefInverse | 0 | Public | FunctionalTests .AssociationScenarioTests+DerivedDepende ntSelfRefInverse |
AssociationScenarioTests+BaseDependentFk Abstract | 0 | Public | FunctionalTests .AssociationScenarioTests+BaseDependentF kAbstract |
AssociationScenarioTests+DependentFkAbst ract | 0 | Public | FunctionalTests .AssociationScenarioTests+DependentFkAbs tract |
AssociationScenarioTests+DerivedDependen tFkAbstract | 0 | Public | FunctionalTests .AssociationScenarioTests+DerivedDepende ntFkAbstract |
AssociationScenarioTests+PrincipalFkAbst ract | 2 | Public | FunctionalTests .AssociationScenarioTests+PrincipalFkAbs tract |
AssociationScenarioTests+DerivedPrincipa lFkAbstract | 0 | Public | FunctionalTests .AssociationScenarioTests+DerivedPrincip alFkAbstract |
AssociationScenarioTests+DependentSelfRe f | 0 | Public | FunctionalTests .AssociationScenarioTests+DependentSelfR ef |
AssociationScenarioTests+DerivedDependen tSelfRef | 0 | Public | FunctionalTests .AssociationScenarioTests+DerivedDepende ntSelfRef |
AssociationScenarioTests+DependentWeirdK eyOrder | 0 | Public | FunctionalTests .AssociationScenarioTests+DependentWeird KeyOrder |
AssociationScenarioTests+DependentWeirdK eyOrder2 | 0 | Public | FunctionalTests .AssociationScenarioTests+DependentWeird KeyOrder2 |
AssociationScenarioTests+PrincipalWeirdK eyOrder | 0 | Public | FunctionalTests .AssociationScenarioTests+PrincipalWeird KeyOrder |
AssociationScenarioTests+DependentNoPrin cipalNavRequired | 0 | Public | FunctionalTests .AssociationScenarioTests+DependentNoPri ncipalNavRequired |
AssociationScenarioTests+DependentNoPrin cipalNavOptional | 0 | Public | FunctionalTests .AssociationScenarioTests+DependentNoPri ncipalNavOptional |
AssociationScenarioTests+PrincipalNoPrin cipalNav | 0 | Public | FunctionalTests .AssociationScenarioTests+PrincipalNoPri ncipalNav |
AssociationScenarioTests+DependentPrinci palNavOptional | 0 | Public | FunctionalTests .AssociationScenarioTests+DependentPrinc ipalNavOptional |
AssociationScenarioTests+PrincipalPrinci palNavOptional | 0 | Public | FunctionalTests .AssociationScenarioTests+PrincipalPrinc ipalNavOptional |
AssociationScenarioTests+DependentPrinci palNavRequired | 0 | Public | FunctionalTests .AssociationScenarioTests+DependentPrinc ipalNavRequired |
AssociationScenarioTests+PrincipalPrinci palNavRequired | 0 | Public | FunctionalTests .AssociationScenarioTests+PrincipalPrinc ipalNavRequired |
AssociationScenarioTests+DependentPrinci palNavRequiredDependent | 0 | Public | FunctionalTests .AssociationScenarioTests+DependentPrinc ipalNavRequiredDependent |
AssociationScenarioTests+PrincipalPrinci palNavRequiredDependent | 0 | Public | FunctionalTests .AssociationScenarioTests+PrincipalPrinc ipalNavRequiredDependent |
AssociationScenarioTests+PrincipalByteKe y | 0 | Public | FunctionalTests .AssociationScenarioTests+PrincipalByteK ey |
AssociationScenarioTests+DependentByteKe y | 0 | Public | FunctionalTests .AssociationScenarioTests+DependentByteK ey |
AssociationScenarioTests+SelfRefInherite dBase | 0 | Public | FunctionalTests .AssociationScenarioTests+SelfRefInherit edBase |
Statistics
Stat | # lines of code (LOC) | Visibility |
---|---|---|
Sum: | 18 357 | 0 |
Average: | 7.74 | 0 |
Minimum: | 0 | 0 |
Maximum: | 439 | 0 |
Standard deviation: | 27.98 | 0 |
Variance: | 783.11 | 0 |
![]() | Rule warning: Declare types in namespaces |
warnif count > 0 from n in Application.Namespaces where
n.Name == ""
select new { n, n.ChildTypes, n.NbLinesOfCode }
// Types are declared within namespaces to
// prevent name collisions, and as a way of
// organizing related types in an object hierarchy.
// Types outside any named namespace are in a
// global namespace that cannot be referenced
// in code. If an anonymous namespace can be found,
// it means that it contains types outside of namespaces.View Code Query or Rule BodyView Code Query or Rule Body
5 namespaces matched
namespaces | ChildTypes | # lines of code (LOC) | Full Name |
---|---|---|---|
84 types | 0 | ||
14 types | 0 | ||
128 types | 2 | ||
41 types | 425 | ||
27 types | 0 |
Statistics
Stat | ChildTypes | # lines of code (LOC) |
---|---|---|
Sum: | 0 | 427 |
Average: | 0 | 85.4 |
Minimum: | 0 | 0 |
Maximum: | 0 | 425 |
Standard deviation: | 0 | 169.8 |
Variance: | 0 | 28 832 |
![]() | Rule warning: Empty static constructor can be discarded |
warnif count > 0 from m in Application.Methods where
m.IsClassConstructor &&
m.NbLinesOfCode == 0
select m
View Code Query or Rule BodyView Code Query or Rule Body
3 methods matched
methods | Full Name |
---|---|
.cctor() | My.MyProject..cctor() |
.cctor() | System.Data.Entity.Utilities .TypeExtensionsTests+GetDeclaredConstruc torsEtc+Little..cctor() |
.cctor() | System.Data.Entity.Utilities .TypeExtensionsTests+GetDeclaredConstruc torsEtc+Omar..cctor() |
Statistics
Stat |
---|
Sum: |
Average: |
Minimum: |
Maximum: |
Standard deviation: |
Variance: |
![]() | Rule warning: Instances size shouldn't be too big |
warnif count > 0 from t in JustMyCode.Types where
t.SizeOfInst > 64
orderby t.SizeOfInst descending
select new { t, t.SizeOfInst, t.InstanceFields }
// Types where SizeOfInst > 64 might degrade performance
// (depending on the number of instances created at runtime)
// and might be hard to maintain. However it is not a rule
// since sometime there is no alternative (the size of
// instances of the System.Net.NetworkInformation.SystemIcmpV6Statistics
// standard class is 2064 bytes).
// Notice that a class with a large SizeOfInst value
// doesn't necessarily have a lot of instance fields.
// It might derive from a class with a large SizeOfInst value.
// See the definition of the SizeOfInst metric here
// http://www.ndepend.com/Metrics.aspx#SizeOfInstView Code Query or Rule BodyView Code Query or Rule Body
73 types matched
types | Size of instance | InstanceFields | Full Name |
---|---|---|---|
ArubaAllTypes | 231 | 37 fields | System.Data.Entity.TestModels.ArubaModel .ArubaAllTypes |
SalesOrderHeader | 221 | 39 fields | FunctionalTests.Model.SalesOrderHeader |
TypeCasts | 213 | 29 fields | System.Data.Entity.Migrations.TypeCasts |
ColoredProduct | 199 | 1 field | FunctionalTests.Model.ColoredProduct |
DiscontinuedProduct | 199 | 1 field | FunctionalTests.Model .DiscontinuedProduct |
StyledProduct | 195 | 1 field | FunctionalTests.Model.StyledProduct |
Product | 191 | 39 fields | FunctionalTests.Model.Product |
StringConcatTests+SomeEntity | 163 | 28 fields | System.Data.Entity.Core.Objects.ELinq .StringConcatTests+SomeEntity |
ToStringTests+SomeEntity | 147 | 25 fields | System.Data.Entity.Core.Objects.ELinq .ToStringTests+SomeEntity |
TypeWithALotOfProperties | 140 | 37 fields | System.Data.Entity .TypeWithALotOfProperties |
ArubaAllCeTypes | 133 | 21 fields | System.Data.Entity.TestModels .ArubaCeModel.ArubaAllCeTypes |
MonsterModel | 128 | 31 fields | FunctionalTests.ProductivityApi .TemplateModels.CsMonsterModel .MonsterModel |
MonsterModel | 128 | 31 fields | MonsterModel |
TypeExtensionsTests+GetProperties+Tinder sticksIICd | 128 | 9 fields | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties+Tinde rsticksIICd |
SalesPerson | 127 | 16 fields | FunctionalTests.Model.SalesPerson |
SalesTerritory | 124 | 15 fields | FunctionalTests.Model.SalesTerritory |
MultiThreadingTests+ContextForSetDiscove ry | 124 | 30 fields | System.Data.Entity .MultiThreadingTests+ContextForSetDiscov ery |
AllTypes | 120 | 22 fields | System.Data.Entity.TestModels .ProviderAgnosticModel.AllTypes |
PurchaseOrderHeader | 119 | 17 fields | FunctionalTests.Model .PurchaseOrderHeader |
PurchaseOrderDetail | 118 | 13 fields | FunctionalTests.Model .PurchaseOrderDetail |
Employee | 116 | 26 fields | FunctionalTests.Model.Employee |
MetadataCollectionTests+MyContext | 108 | 26 fields | System.Data.Entity.Metadata .MetadataCollectionTests+MyContext |
MetadataCollectionTests+MyBigEntity | 108 | 27 fields | System.Data.Entity.Metadata .MetadataCollectionTests+MyBigEntity |
SalesOrderDetail | 102 | 13 fields | FunctionalTests.Model.SalesOrderDetail |
ComparisonTests+NumericEntity | 100 | 7 fields | System.Data.Entity.Query.LinqToEntities .ComparisonTests+NumericEntity |
InheritanceScenarioTests+CarWash | 92 | 1 field | FunctionalTests .InheritanceScenarioTests+CarWash |
InheritanceScenarioTests+FastFoodChain | 92 | 1 field | FunctionalTests .InheritanceScenarioTests+FastFoodChain |
InheritanceScenarioTests+HotDogStand | 92 | 1 field | FunctionalTests .InheritanceScenarioTests+HotDogStand |
InheritanceScenarioTests+InABun | 92 | 1 field | FunctionalTests .InheritanceScenarioTests+InABun |
InheritanceScenarioTests+LosPollosHerman os | 92 | 0 field | FunctionalTests .InheritanceScenarioTests+LosPollosHerma nos |
TypeExtensionsTests+GetProperties+Tinder sticksIIVinyl | 92 | 10 fields | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties+Tinde rsticksIIVinyl |
DbCompiledModelTests+GetConstructorDeleg ate+ContextForConstruction | 89 | 1 field | System.Data.Entity.Infrastructure .DbCompiledModelTests+GetConstructorDele gate+ContextForConstruction |
DbCompiledModelTests+GetConstructorDeleg ate+EntityConnectionWins | 89 | 0 field | System.Data.Entity.Infrastructure .DbCompiledModelTests+GetConstructorDele gate+EntityConnectionWins |
DbCompiledModelTests+GetConstructorDeleg ate+DbConnectionWins | 89 | 0 field | System.Data.Entity.Infrastructure .DbCompiledModelTests+GetConstructorDele gate+DbConnectionWins |
DbCompiledModelTests+GetConstructorDeleg ate+IDbConnectionWins | 89 | 0 field | System.Data.Entity.Infrastructure .DbCompiledModelTests+GetConstructorDele gate+IDbConnectionWins |
DbCompiledModelTests+GetConstructorDeleg ate+IDisposableWins | 89 | 0 field | System.Data.Entity.Infrastructure .DbCompiledModelTests+GetConstructorDele gate+IDisposableWins |
DbCompiledModelTests+GetConstructorDeleg ate+ComponentWins | 89 | 0 field | System.Data.Entity.Infrastructure .DbCompiledModelTests+GetConstructorDele gate+ComponentWins |
DbCompiledModelTests+GetConstructorDeleg ate+MarshalByRefObjectWins | 89 | 0 field | System.Data.Entity.Infrastructure .DbCompiledModelTests+GetConstructorDele gate+MarshalByRefObjectWins |
InheritanceScenarioTests+CoverBusiness | 88 | 22 fields | FunctionalTests .InheritanceScenarioTests+CoverBusiness |
ExtraSpecialOrder | 88 | 2 fields | System.Data.Entity.Migrations .Infrastructure.FunctionsModel .ExtraSpecialOrder |
EntityWithTypes | 87 | 15 fields | FunctionalTests.ProductivityApi .EntityWithTypes |
SpecialOffer | 85 | 12 fields | FunctionalTests.Model.SpecialOffer |
TransactionContext | 85 | 0 field | System.Data.Entity.Objects .TransactionContext |
PregenObjectContext | 85 | 0 field | System.Data.Entity.ViewGeneration .PregenObjectContext |
MultiThreadingTests+DummyObjectContext | 85 | 0 field | System.Data.Entity .MultiThreadingTests+DummyObjectContext |
DbCompiledModelTests+GetConstructorDeleg ate+Normal | 85 | 0 field | System.Data.Entity.Infrastructure .DbCompiledModelTests+GetConstructorDele gate+Normal |
DbCompiledModelTests+GetConstructorDeleg ate+WithDbConnction | 85 | 0 field | System.Data.Entity.Infrastructure .DbCompiledModelTests+GetConstructorDele gate+WithDbConnction |
DbCompiledModelTests+GetConstructorDeleg ate+WithIDbConnction | 85 | 0 field | System.Data.Entity.Infrastructure .DbCompiledModelTests+GetConstructorDele gate+WithIDbConnction |
DbCompiledModelTests+GetConstructorDeleg ate+WithIDisposable | 85 | 0 field | System.Data.Entity.Infrastructure .DbCompiledModelTests+GetConstructorDele gate+WithIDisposable |
DbCompiledModelTests+GetConstructorDeleg ate+WithComponent | 85 | 0 field | System.Data.Entity.Infrastructure .DbCompiledModelTests+GetConstructorDele gate+WithComponent |
DbCompiledModelTests+GetConstructorDeleg ate+WithMarshalByRefObject | 85 | 0 field | System.Data.Entity.Infrastructure .DbCompiledModelTests+GetConstructorDele gate+WithMarshalByRefObject |
DbCompiledModelTests+GetConstructorDeleg ate+WithObject | 85 | 0 field | System.Data.Entity.Infrastructure .DbCompiledModelTests+GetConstructorDele gate+WithObject |
FakeDerivedObjectContext | 85 | 0 field | System.Data.Entity.ModelConfiguration .Internal.UnitTests .FakeDerivedObjectContext |
PropertyFilterTests+PropertyFilterTests_ Derived | 84 | 8 fields | System.Data.Entity.ModelConfiguration .Mappers .PropertyFilterTests+PropertyFilterTests _Derived |
EntityMappingConfigurationTests+MyEntity | 83 | 14 fields | System.Data.Entity.ModelConfiguration .Configuration.Mapping .EntityMappingConfigurationTests+MyEntit y |
WorkOrderRouting | 80 | 14 fields | FunctionalTests.Model.WorkOrderRouting |
SpecialOrder | 80 | 3 fields | System.Data.Entity.Migrations .Infrastructure.FunctionsModel .SpecialOrder |
EntityCommandTests+InterceptionContext+E ntityCommandInvoker | 79 | 0 field | System.Data.Entity.Core.EntityClient .EntityCommandTests+InterceptionContext+ EntityCommandInvoker |
Contact | 77 | 20 fields | FunctionalTests.Model.Contact |
PropertyInfoExtensionsTests+GetPropertie sInHierarchy+ChimChim | 76 | 7 fields | System.Data.Entity.Utilities .PropertyInfoExtensionsTests+GetProperti esInHierarchy+ChimChim |
ProductVendor | 75 | 14 fields | FunctionalTests.Model.ProductVendor |
Team | 73 | 18 fields | ConcurrencyModel.Team |
Address | 72 | 14 fields | FunctionalTests.Model.Address |
CurrencyRate | 72 | 10 fields | FunctionalTests.Model.CurrencyRate |
ShipMethod | 72 | 8 fields | FunctionalTests.Model.ShipMethod |
BillOfMaterials | 69 | 13 fields | FunctionalTests.Model.BillOfMaterials |
SqlGeneratorTests+SkipLimit | 68 | 16 fields | System.Data.Entity.Query .SqlGeneratorTests+SkipLimit |
OrderLine324763 | 67 | 11 fields | FunctionalTests.OrderLine324763 |
Customer | 66 | 13 fields | FunctionalTests.Model.Customer |
WorkOrder | 65 | 14 fields | FunctionalTests.Model.WorkOrder |
DiscontinuedProductMm | 65 | 3 fields | FunctionalTests.ProductivityApi .TemplateModels.CsMonsterModel .DiscontinuedProductMm |
Building | 65 | 10 fields | AdvancedPatternsModel.Building |
DiscontinuedProductMm | 65 | 3 fields | DiscontinuedProductMm |
Statistics
Stat | Size of instance | InstanceFields |
---|---|---|
Sum: | 7 593 | 0 |
Average: | 104.01 | 0 |
Minimum: | 65 | 0 |
Maximum: | 231 | 0 |
Standard deviation: | 39.69 | 0 |
Variance: | 1 575 | 0 |
![]() | Rule warning: Boxing/unboxing should be avoided |
warnif percentage > 5 from m in Application.Methods where
m.IsUsingBoxing ||
m.IsUsingUnboxing
select new { m, m.NbLinesOfCode, m.IsUsingBoxing, m.IsUsingUnboxing }
// Thanks to generics, boxing and unboxing should be rare.View Code Query or Rule BodyView Code Query or Rule Body
2,814 methods matched
methods | # lines of code (LOC) | IsUsingBoxing | IsUsingUnboxing | Full Name |
---|---|---|---|---|
ToString() | 0 | True | False | <>f__AnonymousType1<<UserId1>j__TPar, <UserId2>j__TPar>.ToString() |
ToString() | 0 | True | False | <>f__AnonymousType0<<Id1>j__TPar,<Id2 >j__TPar>.ToString() |
ToString() | 0 | True | False | <>f__AnonymousType2<<RoleId1>j__TPar, <RoleId2>j__TPar>.ToString() |
ToString() | 0 | True | False | <>f__AnonymousType3<<UserId1>j__TPar, <UserId2>j__TPar,<RoleId1>j__TPar, <RoleId2>j__TPar>.ToString() |
ToString() | 0 | True | False | <>f__AnonymousType4<<Foo>j__TPar> .ToString() |
ToString() | 0 | True | False | <>f__AnonymousType6<<VendorID>j__TPar, <ModifiedDate>j__TPar, <PurchasingWebServiceURL>j__TPar> .ToString() |
ToString() | 0 | True | False | <>f__AnonymousType5<<VendorID>j__TPar, <Name>j__TPar,<PreferredVendorStatus >j__TPar,<AccountNumber>j__TPar, <ActiveFlag>j__TPar,<CreditRating >j__TPar>.ToString() |
ToString() | 0 | True | False | <>f__AnonymousType7<<Key>j__TPar> .ToString() |
ToString() | 0 | True | False | <>f__AnonymousType8<<OrderId>j__TPar, <CustomerId>j__TPar>.ToString() |
ToString() | 0 | True | False | <>f__AnonymousType9<<OrderLineId>j__TPar ,<CustomerId>j__TPar>.ToString() |
ToString() | 0 | True | False | <>f__AnonymousTypea<<OrderLineId>j__TPar ,<CustomerId>j__TPar,<OrderId>j__TPar> .ToString() |
ToString() | 0 | True | False | <>f__AnonymousTypeb<<OrderId>j__TPar> .ToString() |
ToString() | 0 | True | False | <>f__AnonymousTypec<<CustomerId>j__TPar, <OrderId>j__TPar>.ToString() |
ToString() | 0 | True | False | <>f__AnonymousTyped<<Key1>j__TPar,<Key2 >j__TPar>.ToString() |
ToString() | 0 | True | False | <>f__AnonymousTypee<<Key1>j__TPar, <DependentForeignKeyPropertyNotFromConve ntion1>j__TPar>.ToString() |
ToString() | 0 | True | False | <>f__AnonymousTypef<<Fk1>j__TPar,<Fk2 >j__TPar>.ToString() |
ToString() | 0 | True | False | <>f__AnonymousType10< <DependentForeignKeyPropertyNotFromConve ntion2>j__TPar, <DependentForeignKeyPropertyNotFromConve ntion1>j__TPar>.ToString() |
ToString() | 0 | True | False | <>f__AnonymousType11<<Key2>j__TPar,<Key1 >j__TPar>.ToString() |
ToString() | 0 | True | False | <>f__AnonymousType12<<Id2>j__TPar,<Id1 >j__TPar>.ToString() |
ToString() | 0 | True | False | <>f__AnonymousType13<<AnotherId1>j__TPar ,<AnotherId2>j__TPar>.ToString() |
ToString() | 0 | True | False | <>f__AnonymousType14<<Id>j__TPar,<Name >j__TPar>.ToString() |
ToString() | 0 | True | False | <>f__AnonymousType15<<ProductCategoryID >j__TPar,<Name>j__TPar>.ToString() |
ToString() | 0 | True | False | <>f__AnonymousType17<<ProductID>j__TPar, <ModifiedDate>j__TPar>.ToString() |
ToString() | 0 | True | False | <>f__AnonymousType16<<ProductID>j__TPar, <rowguid>j__TPar,<SpecialOfferID>j__TPar >.ToString() |
ToString() | 0 | True | False | <>f__AnonymousType19<<ProductID>j__TPar, <ModifiedDate>j__TPar,<SpecialOfferID >j__TPar>.ToString() |
ToString() | 0 | True | False | <>f__AnonymousType18<<ProductID>j__TPar, <rowguid>j__TPar>.ToString() |
ToString() | 0 | True | False | <>f__AnonymousType1a<<ContactID>j__TPar, <CustomerID>j__TPar>.ToString() |
ToString() | 0 | True | False | <>f__AnonymousType1b<<PrincipalKey1 >j__TPar,<PrincipalKey2>j__TPar> .ToString() |
ToString() | 0 | True | False | <>f__AnonymousType1c<<PrincipalKey1 >j__TPar>.ToString() |
ToString() | 0 | True | False | <>f__AnonymousType1d<<CKCategoryKey1 >j__TPar,<CKCategoryKey2>j__TPar> .ToString() |
ToString() | 0 | True | False | <>f__AnonymousType1e<<DependentKey1 >j__TPar>.ToString() |
ToString() | 0 | True | False | <>f__AnonymousType1f<<Id>j__TPar,<Name >j__TPar,<BaseData>j__TPar>.ToString() |
ToString() | 0 | True | False | <>f__AnonymousType20<<Id>j__TPar, <BaseData>j__TPar>.ToString() |
ToString() | 0 | True | False | <>f__AnonymousType22<<BaseData>j__TPar> .ToString() |
ToString() | 0 | True | False | <>f__AnonymousType21<<Name>j__TPar> .ToString() |
ToString() | 0 | True | False | <>f__AnonymousType24<<Id>j__TPar, <BaseData>j__TPar,<Name>j__TPar> .ToString() |
ToString() | 0 | True | False | <>f__AnonymousType25<<Id>j__TPar> .ToString() |
ToString() | 0 | True | False | <>f__AnonymousType27<<Id>j__TPar, <DerivedData2>j__TPar>.ToString() |
ToString() | 0 | True | False | <>f__AnonymousType26<<Id>j__TPar, <DerivedData1>j__TPar>.ToString() |
ToString() | 0 | True | False | <>f__AnonymousType28<<Name>j__TPar, <Description>j__TPar>.ToString() |
ToString() | 0 | True | False | <>f__AnonymousType29<<Property2>j__TPar, <Property3>j__TPar>.ToString() |
ToString() | 0 | True | False | <>f__AnonymousType2a<<Property1>j__TPar, <Property2>j__TPar>.ToString() |
ToString() | 0 | True | False | <>f__AnonymousType2b<<Property1>j__TPar, <Property3>j__TPar>.ToString() |
ToString() | 0 | True | False | <>f__AnonymousType2c<<Property2>j__TPar, <Property4>j__TPar>.ToString() |
ToString() | 0 | True | False | <>f__AnonymousType2d<<Property3>j__TPar, <Property4>j__TPar>.ToString() |
ToString() | 0 | True | False | <>f__AnonymousType2e<<Property3>j__TPar> .ToString() |
ToString() | 0 | True | False | <>f__AnonymousType2f<<Property4>j__TPar> .ToString() |
ToString() | 0 | True | False | <>f__AnonymousType32<<ByteArrayProp >j__TPar,<DateTimeProp>j__TPar, <DecimalProp>j__TPar>.ToString() |
ToString() | 0 | True | False | <>f__AnonymousType31<<StringProp>j__TPar >.ToString() |
ToString() | 0 | True | False | <>f__AnonymousType30<<IntProp>j__TPar> .ToString() |
ToString() | 0 | True | False | <>f__AnonymousType33<<Id>j__TPar,<Detail >j__TPar>.ToString() |
ToString() | 0 | True | False | <>f__AnonymousType35<<Id>j__TPar, <WorkAddress>j__TPar>.ToString() |
ToString() | 0 | True | False | <>f__AnonymousType34<<Id>j__TPar, <HomeAddress>j__TPar>.ToString() |
ToString() | 0 | True | False | <>f__AnonymousType37<<Id>j__TPar,<City >j__TPar>.ToString() |
ToString() | 0 | True | False | <>f__AnonymousType36<<Id>j__TPar,<Street >j__TPar>.ToString() |
ToString() | 0 | True | False | <>f__AnonymousType38<<Property2>j__TPar> .ToString() |
ToString() | 0 | True | False | <>f__AnonymousType39<<Property2_1 >j__TPar>.ToString() |
ToString() | 0 | True | False | <>f__AnonymousType3a<<Id>j__TPar, <Property1>j__TPar,<Property1_1>j__TPar, <Property2>j__TPar>.ToString() |
ToString() | 0 | True | False | <>f__AnonymousType3b<<Id>j__TPar, <Property2_1>j__TPar>.ToString() |
ToString() | 0 | True | False | <>f__AnonymousType3d<<Id>j__TPar,<Prop2 >j__TPar>.ToString() |
ToString() | 0 | True | False | <>f__AnonymousType3c<<Id>j__TPar,<Prop1 >j__TPar>.ToString() |
ToString() | 0 | True | False | <>f__AnonymousType3e<<EmployeeNo>j__TPar ,<PhotoId>j__TPar>.ToString() |
ToString() | 0 | True | False | <>f__AnonymousType3f<<IntProperty >j__TPar,<IntProperty1>j__TPar>.ToString () |
ToString() | 0 | True | False | <>f__AnonymousType40<<OrderId>j__TPar, <Type>j__TPar>.ToString() |
ToString() | 0 | True | False | <>f__AnonymousType41<<Id>j__TPar, <CategoryId>j__TPar>.ToString() |
ToString() | 0 | True | False | <>f__AnonymousType42<<ModifiedDate >j__TPar,<PurchasingWebServiceURL >j__TPar>.ToString() |
ToString() | 0 | True | False | <>f__AnonymousType44< <ProductDescriptionID>j__TPar, <Description>j__TPar,<ModifiedDate >j__TPar>.ToString() |
ToString() | 0 | True | False | <>f__AnonymousType43< <ProductDescriptionID>j__TPar,<rowguid >j__TPar>.ToString() |
ToString() | 0 | True | False | <>f__AnonymousType45<<Id>j__TPar, <MaybeId1>j__TPar,<MaybeId2>j__TPar> .ToString() |
ToString() | 0 | True | False | <>f__AnonymousType46<<UserId>j__TPar, <UserMaybeFk1>j__TPar,<UserMaybeFk2 >j__TPar>.ToString() |
ToString() | 0 | True | False | <>f__AnonymousType47<<MovieId>j__TPar, <MovieMaybeFk1>j__TPar,<MovieMaybeFk2 >j__TPar>.ToString() |
ToString() | 0 | True | False | <>f__AnonymousType48<<Id>j__TPar, <Geography>j__TPar>.ToString() |
ToString() | 0 | True | False | <>f__AnonymousType49<<Id>j__TPar, <Geometry>j__TPar>.ToString() |
ToString() | 0 | True | False | <>f__AnonymousType4a<<Schema>j__TPar, <Name>j__TPar>.ToString() |
ToString() | 0 | True | False | <>f__AnonymousType4b<<TableSchema >j__TPar,<TableName>j__TPar>.ToString() |
ToString() | 0 | True | False | <>f__AnonymousType4c<<TableSchema >j__TPar,<TableName>j__TPar,<Name >j__TPar>.ToString() |
ToString() | 0 | True | False | <>f__AnonymousType4d< <UniqueConstraintSchema>j__TPar, <UniqueConstraintName>j__TPar>.ToString( ) |
ToString() | 0 | True | False | <>f__AnonymousType4e<<ConstraintSchema >j__TPar,<ConstraintName>j__TPar, <ColumnTableSchema>j__TPar, <ColumnTableName>j__TPar,<ColumnName >j__TPar>.ToString() |
ToString() | 0 | True | False | <>f__AnonymousType4f<<ConstraintSchema >j__TPar,<ConstraintName>j__TPar> .ToString() |
ToString() | 0 | True | False | <>f__AnonymousType50<<ColumnTableSchema >j__TPar,<ColumnTableName>j__TPar, <ColumnName>j__TPar>.ToString() |
ToString() | 0 | True | False | <>f__AnonymousType51<<Id>j__TPar, <OrderId>j__TPar>.ToString() |
ToString() | 0 | True | False | <>f__AnonymousType53<<Id>j__TPar,<Y >j__TPar>.ToString() |
ToString() | 0 | True | False | <>f__AnonymousType52<<Id>j__TPar,<X >j__TPar>.ToString() |
GetTransactionCount(DbConnection) | 10 | False | True | System.Data.Entity.TestBase .GetTransactionCount(DbConnection) |
CreateContext<TContext> (DbContextConstructorArgumentType,String ) | 31 | True | True | System.Data.Entity.FunctionalTestBase .CreateContext<TContext> (DbContextConstructorArgumentType,String ) |
VerifySetsAreInitialized<TContext> (DbCompiledModelContents,DbProviderInfo) | 48 | True | True | System.Data.Entity.FunctionalTestBase .VerifySetsAreInitialized<TContext> (DbCompiledModelContents,DbProviderInfo) |
BuildEnumType(XElement) | 12 | True | False | System.Data.Entity .CsdlToClrAssemblyConverter .BuildEnumType(XElement) |
AddRelationshipAttributes(XDocument ,AssemblyBuilder) | 10 | True | False | System.Data.Entity .CsdlToClrAssemblyConverter .AddRelationshipAttributes(XDocument ,AssemblyBuilder) |
AddEdmTypeAttribute<T>(XElement ,DynamicType) | 3 | True | False | System.Data.Entity .CsdlToClrAssemblyConverter .AddEdmTypeAttribute<T>(XElement ,DynamicType) |
GetDynamicType<T>(String) | 4 | True | True | System.Data.Entity.DynamicAssembly .GetDynamicType<T>(String) |
Compile() | 1 | True | False | System.Data.Entity.DynamicAssembly .Compile() |
Compile(AssemblyName) | 40 | True | False | System.Data.Entity.DynamicAssembly .Compile(AssemblyName) |
CreateCustom(DataMemberAttribute) | 3 | True | False | System.Data.Entity .AnnotationAttributeBuilder.CreateCustom (DataMemberAttribute) |
CreateCustom(EdmScalarPropertyAttribute) | 1 | True | False | System.Data.Entity .AnnotationAttributeBuilder.CreateCustom (EdmScalarPropertyAttribute) |
GetArgs(StringLengthAttribute) | 1 | True | False | System.Data.Entity .AnnotationAttributeBuilder.GetArgs (StringLengthAttribute) |
GetArgs(MaxLengthAttribute) | 1 | True | False | System.Data.Entity .AnnotationAttributeBuilder.GetArgs (MaxLengthAttribute) |
GetArgs(DatabaseGeneratedAttribute) | 1 | True | False | System.Data.Entity .AnnotationAttributeBuilder.GetArgs (DatabaseGeneratedAttribute) |
<AddResolver>b__0(Object) | 1 | True | False | System.Data.Entity.MutableResolver+< >c__DisplayClass1<TResolver>. <AddResolver>b__0(Object) |
SerializeAndDeserialize<TException> (TException) | 5 | True | True | System.Data.Entity.ExceptionHelpers .SerializeAndDeserialize<TException> (TException) |
<CheckCollectionDoesNotContainNulls>b__0 <TElement>(TElement) | 1 | True | False | System.Data.Entity.ExceptionHelpers. <CheckCollectionDoesNotContainNulls>b__0 <TElement>(TElement) |
Statistics
Stat | # lines of code (LOC) | IsUsingBoxing | IsUsingUnboxing |
---|---|---|---|
Sum: | 14 317 | 0 | 0 |
Average: | 5.09 | 0 | 0 |
Minimum: | 0 | 0 | 0 |
Maximum: | 121 | 0 | 0 |
Standard deviation: | 7.09 | 0 | 0 |
Variance: | 50.3 | 0 | 0 |
![]() | Rule warning: Attribute classes should be sealed |
warnif count > 0 from t in Application.Types where
t.IsAttributeClass &&
!t.IsSealed &&
!t.IsAbstract &&
t.IsPublic
select new { t, t.NbLinesOfCode }
// The .NET Framework class library provides methods
// for retrieving custom attributes. By default,
// these methods search the attribute inheritance
// hierarchy; for example System.Attribute.GetCustomAttribute
// searches for the specified attribute type, or any
// attribute type that extends the specified attribute
// type. Sealing the attribute eliminates the search
// through the inheritance hierarchy, and can improve
// performance.View Code Query or Rule BodyView Code Query or Rule Body
13 types matched
types | # lines of code (LOC) | Full Name |
---|---|---|
ExtendedFactAttribute | 10 | System.Data.Entity.ExtendedFactAttribute |
AttributeToAnnotationScenarios+AnAttribu te | 3 | FunctionalTests .AttributeToAnnotationScenarios+AnAttrib ute |
FullTrustAttribute | 0 | System.Data.Entity.FullTrustAttribute |
PartialTrustFactAttribute | 15 | System.Data.Entity .PartialTrustFactAttribute |
PartialTrustFixtureAttribute | 1 | System.Data.Entity .PartialTrustFixtureAttribute |
UseDefaultExecutionStrategyAttribute | 4 | System.Data.Entity.TestHelpers .UseDefaultExecutionStrategyAttribute |
MigrationsTheoryAttribute | 9 | System.Data.Entity.Migrations .MigrationsTheoryAttribute |
VariantAttribute | 3 | System.Data.Entity.Migrations .VariantAttribute |
AssemblyExtensionsTests+LaunderingAttrib ute | 0 | System.Data.Entity.Utilities .AssemblyExtensionsTests+LaunderingAttri bute |
MemberInfoExtensionsTests+GetCustomAttri butes+CarWashAttribute | 0 | System.Data.Entity.Utilities .MemberInfoExtensionsTests+GetCustomAttr ibutes+CarWashAttribute |
MemberInfoExtensionsTests+GetCustomAttri butes+LazerTagAttribute | 0 | System.Data.Entity.Utilities .MemberInfoExtensionsTests+GetCustomAttr ibutes+LazerTagAttribute |
MemberInfoExtensionsTests+GetCustomAttri butes+LawyerAttribute | 0 | System.Data.Entity.Utilities .MemberInfoExtensionsTests+GetCustomAttr ibutes+LawyerAttribute |
MemberInfoExtensionsTests+GetCustomAttri butes+LaundererAttribute | 0 | System.Data.Entity.Utilities .MemberInfoExtensionsTests+GetCustomAttr ibutes+LaundererAttribute |
Statistics
Stat | # lines of code (LOC) |
---|---|
Sum: | 45 |
Average: | 3.46 |
Minimum: | 0 |
Maximum: | 15 |
Standard deviation: | 4.68 |
Variance: | 21.94 |
![]() | Rule warning: Don't use obsolete types, methods or fields |
warnif count > 0
let obsoleteTypes = Types.Where(t => t.IsObsolete)
let obsoleteMethods = Methods.Where(m => m.IsObsolete).ToHashSet()
let obsoleteFields = Fields.Where(f => f.IsObsolete)
from m in JustMyCode.Methods.UsingAny(obsoleteTypes).Union(
JustMyCode.Methods.UsingAny(obsoleteMethods)).Union(
JustMyCode.Methods.UsingAny(obsoleteFields))
let obsoleteTypesUsed = obsoleteTypes.UsedBy(m)
// Optimization: MethodsCalled + Intersect() is faster than using obsoleteMethods.UsedBy()
let obsoleteMethodsUsed = m.MethodsCalled.Intersect(obsoleteMethods)
let obsoleteFieldsUsed = obsoleteFields.UsedBy(m)
select new { m, obsoleteTypesUsed, obsoleteMethodsUsed, obsoleteFieldsUsed }View Code Query or Rule BodyView Code Query or Rule Body
198 methods matched
methods | obsoleteTypesUsed | obsoleteMethodsUsed | obsoleteFieldsUsed | Full Name |
---|---|---|---|---|
DropMigrationHistoryAndAddEdmMetadata (DbConnection,String) | 1 type | 0 method | 0 field | ProductivityApiTests .DatabaseInitializationTests .DropMigrationHistoryAndAddEdmMetadata (DbConnection,String) |
CompatibleWithModel_returns_true_when_Mi grationHistory_table_is_missing_but_EdmM etadata_hash_matches() | 1 type | 0 method | 0 field | ProductivityApiTests .DatabaseInitializationTests .CompatibleWithModel_returns_true_when_M igrationHistory_table_is_missing_but_Edm Metadata_hash_matches() |
<Model_hash_can_be_calculated_from_multi ple_threads_using_a_single_DbCompiledMod el>b__17() | 1 type | 0 method | 0 field | ProductivityApiTests .MultiThreadingTests+<>c__DisplayClass19 . <Model_hash_can_be_calculated_from_multi ple_threads_using_a_single_DbCompiledMod el>b__17() |
StandardDeviation_for_decimal_can_be_boo tstrapped_from_DbContext_or_ObjectContex t() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+StandardDeviation .StandardDeviation_for_decimal_can_be_bo otstrapped_from_DbContext_or_ObjectConte xt() |
StandardDeviation_for_nullable_decimal_c an_be_bootstrapped_from_DbContext_or_Obj ectContext() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+StandardDeviation .StandardDeviation_for_nullable_decimal_ can_be_bootstrapped_from_DbContext_or_Ob jectContext() |
StandardDeviation_for_double_can_be_boot strapped_from_DbContext_or_ObjectContext () | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+StandardDeviation .StandardDeviation_for_double_can_be_boo tstrapped_from_DbContext_or_ObjectContex t() |
StandardDeviation_for_nullable_double_ca n_be_bootstrapped_from_DbContext_or_Obje ctContext() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+StandardDeviation .StandardDeviation_for_nullable_double_c an_be_bootstrapped_from_DbContext_or_Obj ectContext() |
StandardDeviation_for_int_can_be_bootstr apped_from_DbContext_or_ObjectContext() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+StandardDeviation .StandardDeviation_for_int_can_be_bootst rapped_from_DbContext_or_ObjectContext() |
StandardDeviation_for_nullable_int_can_b e_bootstrapped_from_DbContext_or_ObjectC ontext() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+StandardDeviation .StandardDeviation_for_nullable_int_can_ be_bootstrapped_from_DbContext_or_Object Context() |
StandardDeviation_for_long_can_be_bootst rapped_from_DbContext_or_ObjectContext() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+StandardDeviation .StandardDeviation_for_long_can_be_boots trapped_from_DbContext_or_ObjectContext( ) |
StandardDeviation_for_nullable_long_can_ be_bootstrapped_from_DbContext_or_Object Context() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+StandardDeviation .StandardDeviation_for_nullable_long_can _be_bootstrapped_from_DbContext_or_Objec tContext() |
StandardDeviation_can_be_used_on_nested_ collection_with_ObjectQuery_or_DbQuery() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+StandardDeviation .StandardDeviation_can_be_used_on_nested _collection_with_ObjectQuery_or_DbQuery( ) |
StandardDeviationP_for_decimal_can_be_bo otstrapped_from_DbContext_or_ObjectConte xt() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+StandardDeviationP .StandardDeviationP_for_decimal_can_be_b ootstrapped_from_DbContext_or_ObjectCont ext() |
StandardDeviationP_for_nullable_decimal_ can_be_bootstrapped_from_DbContext_or_Ob jectContext() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+StandardDeviationP .StandardDeviationP_for_nullable_decimal _can_be_bootstrapped_from_DbContext_or_O bjectContext() |
StandardDeviationP_for_double_can_be_boo tstrapped_from_DbContext_or_ObjectContex t() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+StandardDeviationP .StandardDeviationP_for_double_can_be_bo otstrapped_from_DbContext_or_ObjectConte xt() |
StandardDeviationP_for_nullable_double_c an_be_bootstrapped_from_DbContext_or_Obj ectContext() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+StandardDeviationP .StandardDeviationP_for_nullable_double_ can_be_bootstrapped_from_DbContext_or_Ob jectContext() |
StandardDeviationP_for_int_can_be_bootst rapped_from_DbContext_or_ObjectContext() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+StandardDeviationP .StandardDeviationP_for_int_can_be_boots trapped_from_DbContext_or_ObjectContext( ) |
StandardDeviationP_for_nullable_int_can_ be_bootstrapped_from_DbContext_or_Object Context() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+StandardDeviationP .StandardDeviationP_for_nullable_int_can _be_bootstrapped_from_DbContext_or_Objec tContext() |
StandardDeviationP_for_long_can_be_boots trapped_from_DbContext_or_ObjectContext( ) | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+StandardDeviationP .StandardDeviationP_for_long_can_be_boot strapped_from_DbContext_or_ObjectContext () |
StandardDeviationP_for_nullable_long_can _be_bootstrapped_from_DbContext_or_Objec tContext() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+StandardDeviationP .StandardDeviationP_for_nullable_long_ca n_be_bootstrapped_from_DbContext_or_Obje ctContext() |
StandardDeviationP_can_be_used_on_nested _collection_with_ObjectQuery_or_DbQuery( ) | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+StandardDeviationP .StandardDeviationP_can_be_used_on_neste d_collection_with_ObjectQuery_or_DbQuery () |
Var_for_decimal_can_be_bootstrapped_from _DbContext_or_ObjectContext() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+Var .Var_for_decimal_can_be_bootstrapped_fro m_DbContext_or_ObjectContext() |
Var_for_nullable_decimal_can_be_bootstra pped_from_DbContext_or_ObjectContext() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+Var .Var_for_nullable_decimal_can_be_bootstr apped_from_DbContext_or_ObjectContext() |
Var_for_double_can_be_bootstrapped_from_ DbContext_or_ObjectContext() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+Var .Var_for_double_can_be_bootstrapped_from _DbContext_or_ObjectContext() |
Var_for_nullable_double_can_be_bootstrap ped_from_DbContext_or_ObjectContext() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+Var .Var_for_nullable_double_can_be_bootstra pped_from_DbContext_or_ObjectContext() |
Var_for_int_can_be_bootstrapped_from_DbC ontext_or_ObjectContext() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+Var .Var_for_int_can_be_bootstrapped_from_Db Context_or_ObjectContext() |
Var_for_nullable_int_can_be_bootstrapped _from_DbContext_or_ObjectContext() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+Var .Var_for_nullable_int_can_be_bootstrappe d_from_DbContext_or_ObjectContext() |
Var_for_long_can_be_bootstrapped_from_Db Context_or_ObjectContext() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+Var .Var_for_long_can_be_bootstrapped_from_D bContext_or_ObjectContext() |
Var_for_nullable_long_can_be_bootstrappe d_from_DbContext_or_ObjectContext() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+Var .Var_for_nullable_long_can_be_bootstrapp ed_from_DbContext_or_ObjectContext() |
Var_can_be_used_on_nested_collection_wit h_ObjectQuery_or_DbQuery() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+Var .Var_can_be_used_on_nested_collection_wi th_ObjectQuery_or_DbQuery() |
VarP_for_decimal_can_be_bootstrapped_fro m_DbContext_or_ObjectContext() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+VarP .VarP_for_decimal_can_be_bootstrapped_fr om_DbContext_or_ObjectContext() |
VarP_for_nullable_decimal_can_be_bootstr apped_from_DbContext_or_ObjectContext() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+VarP .VarP_for_nullable_decimal_can_be_bootst rapped_from_DbContext_or_ObjectContext() |
VarP_for_double_can_be_bootstrapped_from _DbContext_or_ObjectContext() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+VarP .VarP_for_double_can_be_bootstrapped_fro m_DbContext_or_ObjectContext() |
VarP_for_nullable_double_can_be_bootstra pped_from_DbContext_or_ObjectContext() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+VarP .VarP_for_nullable_double_can_be_bootstr apped_from_DbContext_or_ObjectContext() |
VarP_for_int_can_be_bootstrapped_from_Db Context_or_ObjectContext() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+VarP .VarP_for_int_can_be_bootstrapped_from_D bContext_or_ObjectContext() |
VarP_for_nullable_int_can_be_bootstrappe d_from_DbContext_or_ObjectContext() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+VarP .VarP_for_nullable_int_can_be_bootstrapp ed_from_DbContext_or_ObjectContext() |
VarP_for_long_can_be_bootstrapped_from_D bContext_or_ObjectContext() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+VarP .VarP_for_long_can_be_bootstrapped_from_ DbContext_or_ObjectContext() |
VarP_for_nullable_long_can_be_bootstrapp ed_from_DbContext_or_ObjectContext() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+VarP .VarP_for_nullable_long_can_be_bootstrap ped_from_DbContext_or_ObjectContext() |
VarP_can_be_used_on_nested_collection_wi th_ObjectQuery_or_DbQuery() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+VarP .VarP_can_be_used_on_nested_collection_w ith_ObjectQuery_or_DbQuery() |
Left_can_be_used_in_DbQuery_or_ObjectQue ry() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+StringFunctions .Left_can_be_used_in_DbQuery_or_ObjectQu ery() |
Right_can_be_used_in_DbQuery_or_ObjectQu ery() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+StringFunctions .Right_can_be_used_in_DbQuery_or_ObjectQ uery() |
Reverse_can_be_used_in_DbQuery_or_Object Query() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+StringFunctions .Reverse_can_be_used_in_DbQuery_or_Objec tQuery() |
AsUnicode_can_be_used_in_DbQuery_or_Obje ctQuery() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+StringFunctions .AsUnicode_can_be_used_in_DbQuery_or_Obj ectQuery() |
AsNonUnicode_can_be_used_in_DbQuery_or_O bjectQuery() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+StringFunctions .AsNonUnicode_can_be_used_in_DbQuery_or_ ObjectQuery() |
GetTotalOffsetMinutes_can_be_used_in_DbQ uery_or_ObjectQuery() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+DateTimeFunctions .GetTotalOffsetMinutes_can_be_used_in_Db Query_or_ObjectQuery() |
TruncateTime_on_offset_can_be_used_in_Db Query_or_ObjectQuery() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+DateTimeFunctions .TruncateTime_on_offset_can_be_used_in_D bQuery_or_ObjectQuery() |
TruncateTime_can_be_used_in_DbQuery_or_O bjectQuery() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+DateTimeFunctions .TruncateTime_can_be_used_in_DbQuery_or_ ObjectQuery() |
CreateDateTime_can_be_used_in_DbQuery_or _ObjectQuery() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+DateTimeFunctions .CreateDateTime_can_be_used_in_DbQuery_o r_ObjectQuery() |
CreateDateTimeOffset_can_be_used_in_DbQu ery_or_ObjectQuery() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+DateTimeFunctions .CreateDateTimeOffset_can_be_used_in_DbQ uery_or_ObjectQuery() |
CreateTime_can_be_used_in_DbQuery_or_Obj ectQuery() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+DateTimeFunctions .CreateTime_can_be_used_in_DbQuery_or_Ob jectQuery() |
AddYears_on_offset_can_be_used_in_DbQuer y_or_ObjectQuery() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+DateTimeFunctions .AddYears_on_offset_can_be_used_in_DbQue ry_or_ObjectQuery() |
AddYears_can_be_used_in_DbQuery_or_Objec tQuery() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+DateTimeFunctions .AddYears_can_be_used_in_DbQuery_or_Obje ctQuery() |
AddMonths_on_offset_can_be_used_in_DbQue ry_or_ObjectQuery() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+DateTimeFunctions .AddMonths_on_offset_can_be_used_in_DbQu ery_or_ObjectQuery() |
AddMonths_can_be_used_in_DbQuery_or_Obje ctQuery() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+DateTimeFunctions .AddMonths_can_be_used_in_DbQuery_or_Obj ectQuery() |
AddDays_on_offset_can_be_used_in_DbQuery _or_ObjectQuery() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+DateTimeFunctions .AddDays_on_offset_can_be_used_in_DbQuer y_or_ObjectQuery() |
AddDays_can_be_used_in_DbQuery_or_Object Query() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+DateTimeFunctions .AddDays_can_be_used_in_DbQuery_or_Objec tQuery() |
AddHours_on_offset_can_be_used_in_DbQuer y_or_ObjectQuery() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+DateTimeFunctions .AddHours_on_offset_can_be_used_in_DbQue ry_or_ObjectQuery() |
AddHours_can_be_used_in_DbQuery_or_Objec tQuery() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+DateTimeFunctions .AddHours_can_be_used_in_DbQuery_or_Obje ctQuery() |
AddHours_on_time_span_can_be_used_in_DbQ uery_or_ObjectQuery() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+DateTimeFunctions .AddHours_on_time_span_can_be_used_in_Db Query_or_ObjectQuery() |
AddMinutes_on_offset_can_be_used_in_DbQu ery_or_ObjectQuery() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+DateTimeFunctions .AddMinutes_on_offset_can_be_used_in_DbQ uery_or_ObjectQuery() |
AddMinutes_can_be_used_in_DbQuery_or_Obj ectQuery() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+DateTimeFunctions .AddMinutes_can_be_used_in_DbQuery_or_Ob jectQuery() |
AddMinutes_on_time_span_can_be_used_in_D bQuery_or_ObjectQuery() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+DateTimeFunctions .AddMinutes_on_time_span_can_be_used_in_ DbQuery_or_ObjectQuery() |
AddSeconds_on_offset_can_be_used_in_DbQu ery_or_ObjectQuery() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+DateTimeFunctions .AddSeconds_on_offset_can_be_used_in_DbQ uery_or_ObjectQuery() |
AddSeconds_can_be_used_in_DbQuery_or_Obj ectQuery() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+DateTimeFunctions .AddSeconds_can_be_used_in_DbQuery_or_Ob jectQuery() |
AddSeconds_on_time_span_can_be_used_in_D bQuery_or_ObjectQuery() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+DateTimeFunctions .AddSeconds_on_time_span_can_be_used_in_ DbQuery_or_ObjectQuery() |
AddMilliseconds_on_offset_can_be_used_in _DbQuery_or_ObjectQuery() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+DateTimeFunctions .AddMilliseconds_on_offset_can_be_used_i n_DbQuery_or_ObjectQuery() |
AddMilliseconds_can_be_used_in_DbQuery_o r_ObjectQuery() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+DateTimeFunctions .AddMilliseconds_can_be_used_in_DbQuery_ or_ObjectQuery() |
AddMilliseconds_on_time_span_can_be_used _in_DbQuery_or_ObjectQuery() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+DateTimeFunctions .AddMilliseconds_on_time_span_can_be_use d_in_DbQuery_or_ObjectQuery() |
AddMicroseconds_on_offset_can_be_used_in _DbQuery_or_ObjectQuery() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+DateTimeFunctions .AddMicroseconds_on_offset_can_be_used_i n_DbQuery_or_ObjectQuery() |
AddMicroseconds_can_be_used_in_DbQuery_o r_ObjectQuery() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+DateTimeFunctions .AddMicroseconds_can_be_used_in_DbQuery_ or_ObjectQuery() |
AddMicroseconds_on_time_span_can_be_used _in_DbQuery_or_ObjectQuery() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+DateTimeFunctions .AddMicroseconds_on_time_span_can_be_use d_in_DbQuery_or_ObjectQuery() |
AddNanoseconds_on_offset_can_be_used_in_ DbQuery_or_ObjectQuery() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+DateTimeFunctions .AddNanoseconds_on_offset_can_be_used_in _DbQuery_or_ObjectQuery() |
AddNanoseconds_can_be_used_in_DbQuery_or _ObjectQuery() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+DateTimeFunctions .AddNanoseconds_can_be_used_in_DbQuery_o r_ObjectQuery() |
AddNanoseconds_on_time_span_can_be_used_ in_DbQuery_or_ObjectQuery() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+DateTimeFunctions .AddNanoseconds_on_time_span_can_be_used _in_DbQuery_or_ObjectQuery() |
DiffYears_on_offset_can_be_used_in_DbQue ry_or_ObjectQuery() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+DateTimeFunctions .DiffYears_on_offset_can_be_used_in_DbQu ery_or_ObjectQuery() |
DiffYears_can_be_used_in_DbQuery_or_Obje ctQuery() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+DateTimeFunctions .DiffYears_can_be_used_in_DbQuery_or_Obj ectQuery() |
DiffMonths_on_offset_can_be_used_in_DbQu ery_or_ObjectQuery() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+DateTimeFunctions .DiffMonths_on_offset_can_be_used_in_DbQ uery_or_ObjectQuery() |
DiffMonths_can_be_used_in_DbQuery_or_Obj ectQuery() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+DateTimeFunctions .DiffMonths_can_be_used_in_DbQuery_or_Ob jectQuery() |
DiffDays_on_offset_can_be_used_in_DbQuer y_or_ObjectQuery() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+DateTimeFunctions .DiffDays_on_offset_can_be_used_in_DbQue ry_or_ObjectQuery() |
DiffDays_can_be_used_in_DbQuery_or_Objec tQuery() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+DateTimeFunctions .DiffDays_can_be_used_in_DbQuery_or_Obje ctQuery() |
DiffHours_on_offset_can_be_used_in_DbQue ry_or_ObjectQuery() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+DateTimeFunctions .DiffHours_on_offset_can_be_used_in_DbQu ery_or_ObjectQuery() |
DiffHours_can_be_used_in_DbQuery_or_Obje ctQuery() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+DateTimeFunctions .DiffHours_can_be_used_in_DbQuery_or_Obj ectQuery() |
DiffHours_on_time_span_can_be_used_in_Db Query_or_ObjectQuery() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+DateTimeFunctions .DiffHours_on_time_span_can_be_used_in_D bQuery_or_ObjectQuery() |
DiffMinutes_on_offset_can_be_used_in_DbQ uery_or_ObjectQuery() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+DateTimeFunctions .DiffMinutes_on_offset_can_be_used_in_Db Query_or_ObjectQuery() |
DiffMinutes_can_be_used_in_DbQuery_or_Ob jectQuery() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+DateTimeFunctions .DiffMinutes_can_be_used_in_DbQuery_or_O bjectQuery() |
DiffMinutes_on_time_span_can_be_used_in_ DbQuery_or_ObjectQuery() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+DateTimeFunctions .DiffMinutes_on_time_span_can_be_used_in _DbQuery_or_ObjectQuery() |
DiffSeconds_on_offset_can_be_used_in_DbQ uery_or_ObjectQuery() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+DateTimeFunctions .DiffSeconds_on_offset_can_be_used_in_Db Query_or_ObjectQuery() |
DiffSeconds_can_be_used_in_DbQuery_or_Ob jectQuery() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+DateTimeFunctions .DiffSeconds_can_be_used_in_DbQuery_or_O bjectQuery() |
DiffSeconds_on_time_span_can_be_used_in_ DbQuery_or_ObjectQuery() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+DateTimeFunctions .DiffSeconds_on_time_span_can_be_used_in _DbQuery_or_ObjectQuery() |
DiffMilliseconds_on_offset_can_be_used_i n_DbQuery_or_ObjectQuery() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+DateTimeFunctions .DiffMilliseconds_on_offset_can_be_used_ in_DbQuery_or_ObjectQuery() |
DiffMilliseconds_can_be_used_in_DbQuery_ or_ObjectQuery() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+DateTimeFunctions .DiffMilliseconds_can_be_used_in_DbQuery _or_ObjectQuery() |
DiffMilliseconds_on_time_span_can_be_use d_in_DbQuery_or_ObjectQuery() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+DateTimeFunctions .DiffMilliseconds_on_time_span_can_be_us ed_in_DbQuery_or_ObjectQuery() |
DiffMicroseconds_on_offset_can_be_used_i n_DbQuery_or_ObjectQuery() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+DateTimeFunctions .DiffMicroseconds_on_offset_can_be_used_ in_DbQuery_or_ObjectQuery() |
DiffMicroseconds_can_be_used_in_DbQuery_ or_ObjectQuery() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+DateTimeFunctions .DiffMicroseconds_can_be_used_in_DbQuery _or_ObjectQuery() |
DiffMicroseconds_on_time_span_can_be_use d_in_DbQuery_or_ObjectQuery() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+DateTimeFunctions .DiffMicroseconds_on_time_span_can_be_us ed_in_DbQuery_or_ObjectQuery() |
DiffNanoseconds_on_offset_can_be_used_in _DbQuery_or_ObjectQuery() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+DateTimeFunctions .DiffNanoseconds_on_offset_can_be_used_i n_DbQuery_or_ObjectQuery() |
DiffNanoseconds_can_be_used_in_DbQuery_o r_ObjectQuery() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+DateTimeFunctions .DiffNanoseconds_can_be_used_in_DbQuery_ or_ObjectQuery() |
DiffNanoseconds_on_time_span_can_be_used _in_DbQuery_or_ObjectQuery() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+DateTimeFunctions .DiffNanoseconds_on_time_span_can_be_use d_in_DbQuery_or_ObjectQuery() |
Truncate_on_double_can_be_used_in_DbQuer y_or_ObjectQuery() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+Truncate .Truncate_on_double_can_be_used_in_DbQue ry_or_ObjectQuery() |
Truncate_on_decimal_can_be_used_in_DbQue ry_or_ObjectQuery() | 1 type | 0 method | 0 field | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+Truncate .Truncate_on_decimal_can_be_used_in_DbQu ery_or_ObjectQuery() |
Statistics
Stat | obsoleteTypesUsed | obsoleteMethodsUsed | obsoleteFieldsUsed |
---|---|---|---|
Sum: | 0 | 0 | 0 |
Average: | 0 | 0 | 0 |
Minimum: | 0 | 0 | 0 |
Maximum: | 0 | 0 | 0 |
Standard deviation: | 0 | 0 | 0 |
Variance: | 0 | 0 | 0 |
![]() | Rule warning: Don't forget to implement methods that throw NotImplementedException |
warnif count > 0
from m in Application.Methods
where m.CreateA("System.NotImplementedException".AllowNoMatch())
select mView Code Query or Rule BodyView Code Query or Rule Body
104 methods matched
methods | Full Name |
---|---|
BeginDbTransaction(IsolationLevel) | System.Data.Entity.GenericConnection<T> .BeginDbTransaction(IsolationLevel) |
Close() | System.Data.Entity.GenericConnection<T> .Close() |
ChangeDatabase(String) | System.Data.Entity.GenericConnection<T> .ChangeDatabase(String) |
Open() | System.Data.Entity.GenericConnection<T> .Open() |
get_ConnectionString() | System.Data.Entity.GenericConnection<T> .get_ConnectionString() |
set_ConnectionString(String) | System.Data.Entity.GenericConnection<T> .set_ConnectionString(String) |
get_DataSource() | System.Data.Entity.GenericConnection<T> .get_DataSource() |
get_Database() | System.Data.Entity.GenericConnection<T> .get_Database() |
get_State() | System.Data.Entity.GenericConnection<T> .get_State() |
get_ServerVersion() | System.Data.Entity.GenericConnection<T> .get_ServerVersion() |
CreateDbCommand() | System.Data.Entity.GenericConnection<T> .CreateDbCommand() |
CreateDbCommandDefinition (DbProviderManifest,DbCommandTree) | System.Data.Entity .GenericProviderServices .CreateDbCommandDefinition (DbProviderManifest,DbCommandTree) |
GetDbProviderManifestToken(DbConnection) | System.Data.Entity .GenericProviderServices .GetDbProviderManifestToken(DbConnection ) |
GetDbProviderManifest(String) | System.Data.Entity .GenericProviderServices .GetDbProviderManifest(String) |
FindAsync(CancellationToken,Object[]) | System.Data.Entity.HashSetBasedDbSet<T> .FindAsync(CancellationToken,Object[]) |
Create<TDerivedEntity>() | System.Data.Entity.HashSetBasedDbSet<T> .Create<TDerivedEntity>() |
CreateConnection(String) | System.Data.Entity.TestHelpers .DefaultFunctionalTestsConnectionFactory .CreateConnection(String) |
OnLoaded(Object ,DbConfigurationLoadedEventArgs) | System.Data.Entity.TestHelpers .FunctionalTestsConfiguration.OnLoaded (Object,DbConfigurationLoadedEventArgs) |
GetHashCode() | System.Data.Entity.ProductivityApi .GetHashCodeTests+GetHashCodeProduct .GetHashCode() |
Equals(Object) | System.Data.Entity.ProductivityApi .GetHashCodeTests+GetHashCodeProduct .Equals(Object) |
GetHashCode() | System.Data.Entity.ProductivityApi .GetHashCodeTests+GetHashCodeProductDeta ils.GetHashCode() |
Equals(Object) | System.Data.Entity.ProductivityApi .GetHashCodeTests+GetHashCodeProductDeta ils.Equals(Object) |
GetHashCode() | System.Data.Entity.ProductivityApi .GetHashCodeTests+GetHashCodeSku .GetHashCode() |
Equals(Object) | System.Data.Entity.ProductivityApi .GetHashCodeTests+GetHashCodeSku.Equals (Object) |
SetDropCreateIfNotExists() | System.Data.Entity.SqlServer .DatabaseExistsInInitializerTests+Exists Context.SetDropCreateIfNotExists() |
SetDropCreateIfModelChanges() | System.Data.Entity.SqlServer .DatabaseExistsInInitializerTests+Exists Context.SetDropCreateIfModelChanges() |
GetView(EntitySetBase) | System.Data.Entity.ViewGeneration .ViewCacheWithHashMissmatch.GetView (EntitySetBase) |
GetHashCode(Product) | System.Data.Entity.EntityClient .AsyncScenarios+ProductEqualityComparer .GetHashCode(Product) |
ArbitrarySuppliersWithinRange(Nullable <Int32>,DbGeography) | ProductivityApiTests.SpatialTests .ArbitrarySuppliersWithinRange(Nullable <Int32>,DbGeography) |
StaticSuppliersWithinRange(Nullable <Int32>,DbGeography) | ProductivityApiTests .SpatialNorthwindContext .StaticSuppliersWithinRange(Nullable <Int32>,DbGeography) |
<ShouldValidateEntity_should_not_run_for _metadata_entities>b__7(DbEntityEntry) | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .ValidationTests. <ShouldValidateEntity_should_not_run_for _metadata_entities>b__7(DbEntityEntry) |
CreateConnection(String) | System.Data.Entity .DatabaseTests+DefaultConnectionFactory+ FakeConnectionFactory.CreateConnection (String) |
CreateConnection(String) | System.Data.Entity .ConnectionFactoryConfig .FakeBaseConnectionFactory .CreateConnection(String) |
BeginDbTransaction(IsolationLevel) | System.Data.Entity.Utilities .DbConnectionExtensionsTests+InvalidConn ection.BeginDbTransaction(IsolationLevel ) |
ChangeDatabase(String) | System.Data.Entity.Utilities .DbConnectionExtensionsTests+InvalidConn ection.ChangeDatabase(String) |
Close() | System.Data.Entity.Utilities .DbConnectionExtensionsTests+InvalidConn ection.Close() |
get_ConnectionString() | System.Data.Entity.Utilities .DbConnectionExtensionsTests+InvalidConn ection.get_ConnectionString() |
set_ConnectionString(String) | System.Data.Entity.Utilities .DbConnectionExtensionsTests+InvalidConn ection.set_ConnectionString(String) |
CreateDbCommand() | System.Data.Entity.Utilities .DbConnectionExtensionsTests+InvalidConn ection.CreateDbCommand() |
get_DataSource() | System.Data.Entity.Utilities .DbConnectionExtensionsTests+InvalidConn ection.get_DataSource() |
get_Database() | System.Data.Entity.Utilities .DbConnectionExtensionsTests+InvalidConn ection.get_Database() |
Open() | System.Data.Entity.Utilities .DbConnectionExtensionsTests+InvalidConn ection.Open() |
get_ServerVersion() | System.Data.Entity.Utilities .DbConnectionExtensionsTests+InvalidConn ection.get_ServerVersion() |
get_State() | System.Data.Entity.Utilities .DbConnectionExtensionsTests+InvalidConn ection.get_State() |
GetEnumerator() | System.Data.Entity.Utilities .TypeExtensionsTests+TryGetElementType+M ultipleImplementor<TContext,TElement> .GetEnumerator() |
GetEnumerator() | System.Data.Entity.Utilities .TypeExtensionsTests+TryGetElementType+R oleCollection2014.GetEnumerator() |
Add (TypeExtensionsTests+TryGetElementType+I Role2014) | System.Data.Entity.Utilities .TypeExtensionsTests+TryGetElementType+R oleCollection2014.Add (TypeExtensionsTests+TryGetElementType+I Role2014) |
Contains (TypeExtensionsTests+TryGetElementType+I Role2014) | System.Data.Entity.Utilities .TypeExtensionsTests+TryGetElementType+R oleCollection2014.Contains (TypeExtensionsTests+TryGetElementType+I Role2014) |
CopyTo (TypeExtensionsTests+TryGetElementType+I Role2014[],Int32) | System.Data.Entity.Utilities .TypeExtensionsTests+TryGetElementType+R oleCollection2014.CopyTo (TypeExtensionsTests+TryGetElementType+I Role2014[],Int32) |
Remove (TypeExtensionsTests+TryGetElementType+I Role2014) | System.Data.Entity.Utilities .TypeExtensionsTests+TryGetElementType+R oleCollection2014.Remove (TypeExtensionsTests+TryGetElementType+I Role2014) |
get_Item(Int32) | System.Data.Entity.Validation .EntityWithComplexType.get_Item(Int32) |
set_Item(Int32,String) | System.Data.Entity.Validation .EntityWithComplexType.set_Item(Int32 ,String) |
Validate(ValidationContext) | System.Data.Entity.Validation .ValidatableEntity.Validate (ValidationContext) |
Validate(ValidationContext) | System.Data.Entity.Validation .ValidatableComplexType.Validate (ValidationContext) |
Validate(ValidationContext) | System.Data.Entity.Validation .AirportDetails.Validate (ValidationContext) |
get_CommandTreeKind() | System.Data.Entity.Core.Common .CommandTrees .DbCommandTreeTests+ConcreteDbCommandTre e.get_CommandTreeKind() |
GetParameters() | System.Data.Entity.Core.Common .CommandTrees .DbCommandTreeTests+ConcreteDbCommandTre e.GetParameters() |
DumpStructure(ExpressionDumper) | System.Data.Entity.Core.Common .CommandTrees .DbCommandTreeTests+ConcreteDbCommandTre e.DumpStructure(ExpressionDumper) |
PrintTree(ExpressionPrinter) | System.Data.Entity.Core.Common .CommandTrees .DbCommandTreeTests+ConcreteDbCommandTre e.PrintTree(ExpressionPrinter) |
Create(String,String) | System.Data.Entity.Core.Mapping .StorageMappingItemCollectionTests+Sampl eMappingViewCacheFactory.Create(String ,String) |
get_NoSetterProp() | System.Data.Entity.Core.Objects .PublicClass1.get_NoSetterProp() |
set_NoGetterProp(PublicClass2) | System.Data.Entity.Core.Objects .PublicClass1.set_NoGetterProp (PublicClass2) |
get_Item(Int32) | System.Data.Entity.Core.Objects .PublicClass1.get_Item(Int32) |
set_Item(Int32,PublicClass2) | System.Data.Entity.Core.Objects .PublicClass1.set_Item(Int32 ,PublicClass2) |
Releases_connection_when_exception_caugh t() | System.Data.Entity.Core.Objects .ObjectContextTests+EnsureConnection .Releases_connection_when_exception_caug ht() |
Command_is_executed_with_correct_Command Text_and_parameters_with_streaming() | System.Data.Entity.Core.Objects .ObjectContextTests+ExecuteStoreQuery .Command_is_executed_with_correct_Comman dText_and_parameters_with_streaming() |
<The_connection_is_released_if_an_except ion_is_thrown>b__ee() | System.Data.Entity.Core.Objects .ObjectContextTests+ExecuteInTransaction +<>c__DisplayClassef. <The_connection_is_released_if_an_except ion_is_thrown>b__ee() |
Command_is_executed_with_streaming() | System.Data.Entity.Core.Objects .ObjectContextTests+ExecuteFunction .Command_is_executed_with_streaming() |
Releases_connection_when_exception_caugh t() | System.Data.Entity.Core.Objects .ObjectContextTests+EnsureConnectionAsyn c .Releases_connection_when_exception_caug ht() |
Command_is_executed_with_correct_Command Text_and_parameters_with_streaming() | System.Data.Entity.Core.Objects .ObjectContextTests+ExecuteStoreQueryAsy nc .Command_is_executed_with_correct_Comman dText_and_parameters_with_streaming() |
<The_connection_is_released_if_an_except ion_is_thrown>b__1f9() | System.Data.Entity.Core.Objects .ObjectContextTests+ExecuteInTransaction Async+<>c__DisplayClass1fa. <The_connection_is_released_if_an_except ion_is_thrown>b__1f9() |
ShouldRetryOn(Exception) | System.Data.Entity.Infrastructure .DbExecutionStrategyTests+TestExecutionS trategy.ShouldRetryOn(Exception) |
CreateConnection(String) | System.Data.Entity.Infrastructure .DependencyResolution .AppConfigDependencyResolverTests+FakeCo nnectionFactory.CreateConnection(String) |
CreateDbCommandDefinition (DbProviderManifest,DbCommandTree) | System.Data.Entity.Infrastructure .DependencyResolution .ProviderServicesFactoryTests+FakeProvid erBase.CreateDbCommandDefinition (DbProviderManifest,DbCommandTree) |
GetDbProviderManifestToken(DbConnection) | System.Data.Entity.Infrastructure .DependencyResolution .ProviderServicesFactoryTests+FakeProvid erBase.GetDbProviderManifestToken (DbConnection) |
GetDbProviderManifest(String) | System.Data.Entity.Infrastructure .DependencyResolution .ProviderServicesFactoryTests+FakeProvid erBase.GetDbProviderManifest(String) |
GetValue() | System.Data.Entity.Infrastructure.Design .ForwardingProxyTests+LooseDummyType .GetValue() |
SetResult(Object) | System.Data.Entity.Infrastructure.Design .HandlerBaseTests+MyHandler.SetResult (Object) |
get_MappingHashValue() | System.Data.Entity.Infrastructure .MappingViews .DbMappingViewCacheTypeAttributeTests+Sa mpleMappingViewCache .get_MappingHashValue() |
GetView(EntitySetBase) | System.Data.Entity.Infrastructure .MappingViews .DbMappingViewCacheTypeAttributeTests+Sa mpleMappingViewCache.GetView (EntitySetBase) |
get_MappingHashValue() | System.Data.Entity.Infrastructure .MappingViews .DefaultDbMappingViewCacheFactoryTests+S ampleMappingViewCache .get_MappingHashValue() |
GetView(EntitySetBase) | System.Data.Entity.Infrastructure .MappingViews .DefaultDbMappingViewCacheFactoryTests+S ampleMappingViewCache.GetView (EntitySetBase) |
get_ServerVersion() | System.Data.Entity.ModelConfiguration .Internal.UnitTests.FakeSqlConnection .get_ServerVersion() |
BeginDbTransaction(IsolationLevel) | System.Data.Entity.ModelConfiguration .Internal.UnitTests.FakeSqlConnection .BeginDbTransaction(IsolationLevel) |
ChangeDatabase(String) | System.Data.Entity.ModelConfiguration .Internal.UnitTests.FakeSqlConnection .ChangeDatabase(String) |
Close() | System.Data.Entity.ModelConfiguration .Internal.UnitTests.FakeSqlConnection .Close() |
CreateDbCommand() | System.Data.Entity.ModelConfiguration .Internal.UnitTests.FakeSqlConnection .CreateDbCommand() |
Open() | System.Data.Entity.ModelConfiguration .Internal.UnitTests.FakeSqlConnection .Open() |
Generate(IEnumerable<MigrationOperation> ,String) | System.Data.Entity.ModelConfiguration .Internal.UnitTests.FakeSqlGenerator .Generate(IEnumerable<MigrationOperation >,String) |
Apply(EdmModel,DbModel) | System.Data.Entity.ModelConfiguration .Configuration .ConventionsConfigurationTests+Conceptua lModelConventionFixture.Apply(EdmModel ,DbModel) |
Apply(EdmModel,DbModel) | System.Data.Entity.ModelConfiguration .Configuration .ConventionsConfigurationTests+StoreMode lConventionFixture.Apply(EdmModel ,DbModel) |
Apply(DbDatabaseMapping) | System.Data.Entity.ModelConfiguration .Configuration .ConventionsConfigurationTests+MappingCo nventionFixture.Apply(DbDatabaseMapping) |
Equals(Object) | System.Data.Entity.Internal .InternalEntityEntryTests+GetHashCodeEnt ity.Equals(Object) |
GetHashCode() | System.Data.Entity.Internal .InternalEntityEntryTests+GetHashCodeEnt ity.GetHashCode() |
CreateConnection(String) | System.Data.Entity.Internal .FakeBaseConnectionFactory .CreateConnection(String) |
Generate(String,IEnumerable <MigrationOperation>,String,String ,String,String) | System.Data.Entity.Migrations.Design .MigrationCodeGeneratorTests+DummyCodeGe nerator.Generate(String,IEnumerable <MigrationOperation>,String,String ,String,String) |
WellKnownText_for_DbGeography_falls_back _to_AsText_if_AsTextIncludingElevationAn dMeasure_throws() | System.Data.Entity.SqlServer .IDbSpatialValueTests .WellKnownText_for_DbGeography_falls_bac k_to_AsText_if_AsTextIncludingElevationA ndMeasure_throws() |
WellKnownText_for_DbGeometry_falls_back_ to_AsText_if_AsTextIncludingElevationAnd Measure_throws() | System.Data.Entity.SqlServer .IDbSpatialValueTests .WellKnownText_for_DbGeometry_falls_back _to_AsText_if_AsTextIncludingElevationAn dMeasure_throws() |
<NullIfNotImplemented_translates_NotImpl ementedException_to_null_for_reference_t ype>b__0() | System.Data.Entity.SqlServer.Utilities .FuncExtensionsTests. <NullIfNotImplemented_translates_NotImpl ementedException_to_null_for_reference_t ype>b__0() |
<NullIfNotImplemented_translates_NotImpl ementedException_to_null_for_nullable_ty pe>b__2() | System.Data.Entity.SqlServer.Utilities .FuncExtensionsTests. <NullIfNotImplemented_translates_NotImpl ementedException_to_null_for_nullable_ty pe>b__2() |
Statistics
Stat |
---|
Sum: |
Average: |
Minimum: |
Maximum: |
Standard deviation: |
Variance: |
531
Architecture and Layering |
|
![]() | Critical Rule warning: Avoid namespaces mutually dependent |
warnif count > 0
// Foreach pair of namespace mutually dependent, this rule lists pairs.
// The pair { first, second } is formatted to show first namespace shouldn't use the second namespace.
// The first/second order is inferred from the number of types used by each other.
// The first namespace is using fewer types of the second.
// It means the first namespace is certainly at a lower level in the architecture than the second.
//
// To explore the coupling between two namespaces mutually dependent:
// 1) export the first namespace to the vertical header of the dependency matrix
// 2) export the second namespace to the horizontal header of the dependency matrix
// 3) double-click the black cell
// 4) in the matrix command bar, click the button: Remove empty Row(s) en Column(s)
// At this point, the dependency matrix shows types involved into the coupling.
//
// Following this rule is useful to avoid namespaces dependency cycles.
// More on this in our white books relative to partitioning code.
// http://www.ndepend.com/WhiteBooks.aspx
// Optimization: restraint application assemblies set
// If some namespaces are mutually dependent
// - They must be declared in the same assembly
// - The parent assembly must ContainsNamespaceDependencyCycle
from assembly in Application.Assemblies.Where(a => a.ContainsNamespaceDependencyCycle != null && a.ContainsNamespaceDependencyCycle.Value)
// hashset is used to avoid reporting both A <-> B and B <-> A
let hashset = new HashSet<INamespace>()
// Optimization: restraint namespaces set
// If a namespace doesn't have a Level value, it must be in a dependency cycle
// or it must be using directly or indirectly a dependency cycle.
let namespacesSuspect = assembly.ChildNamespaces.Where(n => n.Level == null)
from nA in namespacesSuspect
// Select namespaces mutually dependent with nA
let unused = hashset.Add(nA) // Populate hashset
let namespacesMutuallyDependentWith_nA = nA.NamespacesUsed.Using(nA)
.Except(hashset) // <-- avoid reporting both A <-> B and B <-> A
where namespacesMutuallyDependentWith_nA.Count() > 0
from nB in namespacesMutuallyDependentWith_nA
// nA and nB are mutually dependent
// First select the one that shouldn't use the other.
// The first namespace is inferred from the fact that it is using less types of the second.
let typesOfBUsedByA = nB.ChildTypes.UsedBy(nA)
let typesOfAUsedByB = nA.ChildTypes.UsedBy(nB)
let first = (typesOfBUsedByA.Count() > typesOfAUsedByB.Count()) ? nB : nA
let second = (first == nA) ? nB : nA
let typesOfFirstUsedBySecond = (first == nA) ? typesOfAUsedByB : typesOfBUsedByA
let typesOfSecondUsedByFirst = (first == nA) ? typesOfBUsedByA : typesOfAUsedByB
select new { first, shouldntUse = second, typesOfFirstUsedBySecond, typesOfSecondUsedByFirst }
View Code Query or Rule BodyView Code Query or Rule Body
17 namespaces matched
namespaces | shouldntUse | typesOfFirstUsedBySecond | typesOfSecondUsedByFirst | Full Name |
---|---|---|---|---|
System.Data.Entity | System.Data.Entity.TestHelpers | 3 types | 2 types | System.Data.Entity |
System.Data.Entity.Migrations | System.Data.Entity | 2 types | 1 type | System.Data.Entity.Migrations |
System.Data.Entity | System.Data.Entity.TestHelpers | 2 types | 2 types | System.Data.Entity |
System.Data.Entity.Migrations | System.Data.Entity.Migrations.UpDownUp | 11 types | 10 types | System.Data.Entity.Migrations |
System.Data.Entity.Migrations | System.Data.Entity.Migrations.UpDownUpPartial | 4 types | 3 types | System.Data.Entity.Migrations |
System.Data.Entity.Migrations | System.Data.Entity.Migrations.NotReady | 1 type | 1 type | System.Data.Entity.Migrations |
System.Data.Entity.Migrations | System.Data.Entity.Migrations.CustomOperations | 2 types | 1 type | System.Data.Entity.Migrations |
FunctionalTests.ProductivityApi .TemplateModels.CsMonsterModel | Another.Place | 6 types | 5 types | FunctionalTests.ProductivityApi .TemplateModels.CsMonsterModel |
Another.Place | 6 types | 6 types | ||
System.Data.Entity | System.Data.Entity.Core.Objects | 3 types | 1 type | System.Data.Entity |
System.Data.Entity | System.Data.Entity.Internal | 6 types | 6 types | System.Data.Entity |
System.Data.Entity | System.Data.Entity.Internal.Linq | 1 type | 1 type | System.Data.Entity |
System.Data.Entity | System.Data.Entity.ModelConfiguration.Internal.UnitTests | 1 type | 1 type | System.Data.Entity |
System.Data.Entity | System.Data.Entity.Infrastructure | 5 types | 2 types | System.Data.Entity |
System.Data.Entity.Core.Common.Internal .Materialization | System.Data.Entity.Core.Objects | 1 type | 1 type | System.Data.Entity.Core.Common.Internal .Materialization |
System.Data.Entity.Core.Objects | System.Data.Entity.Core.Objects.DataClasses | 1 type | 1 type | System.Data.Entity.Core.Objects |
System.Data.Entity.Internal | System.Data.Entity.Internal.Linq | 2 types | 1 type | System.Data.Entity.Internal |
Statistics
Stat | shouldntUse | typesOfFirstUsedBySecond | typesOfSecondUsedByFirst |
---|---|---|---|
Sum: | 0 | 0 | 0 |
Average: | 0 | 0 | 0 |
Minimum: | 0 | 0 | 0 |
Maximum: | 0 | 0 | 0 |
Standard deviation: | 0 | 0 | 0 |
Variance: | 0 | 0 | 0 |
![]() | Rule warning: Avoid namespaces dependency cycles |
warnif count > 0
// This query lists all application namespace dependency cycles.
// Each row shows a different cycle, prefixed with a namespace entangled in the cycle.
//
// To browse a cycle on the dependency graph or the dependency matrix, right click
// a cycle cell and export the matched namespaces to the dependency graph or matrix!
//
// In the matrix, dependency cycles are represented with red squares and black cells.
// To easily browse dependency cycles, the Matrix comes with an option:
// --> Display Direct and Indirect Dependencies
//
// Read our white books relative to partitioning code,
// to know more about namespaces dependency cycles, and why avoiding them
// is a simple but efficient solution to architecture for your code base.
// http://www.ndepend.com/WhiteBooks.aspx
// Optimization: restraint application assemblies set
// If some namespaces are mutually dependent
// - They must be declared in the same assembly
// - The parent assembly must ContainsNamespaceDependencyCycle
from assembly in Application.Assemblies
.Where(a => a.ContainsNamespaceDependencyCycle != null &&
a.ContainsNamespaceDependencyCycle.Value)
// Optimization: restraint namespaces set
// A namespace involved in a cycle necessarily have a null Level.
let namespacesSuspect = assembly.ChildNamespaces.Where(n => n.Level == null)
// hashset is used to avoid iterating again on namespaces already caught in a cycle.
let hashset = new HashSet<INamespace>()
from suspect in namespacesSuspect
// By commenting in this line, the query matches all namespaces involved in a cycle.
where !hashset.Contains(suspect)
// Define 2 code metrics
// - Namespaces depth of is using indirectly the suspect namespace.
// - Namespaces depth of is used by the suspect namespace indirectly.
// Note: for direct usage the depth is equal to 1.
let namespacesUserDepth = namespacesSuspect.DepthOfIsUsing(suspect)
let namespacesUsedDepth = namespacesSuspect.DepthOfIsUsedBy(suspect)
// Select namespaces that are both using and used by namespaceSuspect
let usersAndUsed = from n in namespacesSuspect where
namespacesUserDepth[n] > 0 &&
namespacesUsedDepth[n] > 0
select n
where usersAndUsed.Count() > 0
// Here we've found namespace(s) both using and used by the suspect namespace.
// A cycle involving the suspect namespace is found!
let cycle = usersAndUsed.Append(suspect)
// Fill hashset with namespaces in the cycle.
// .ToArray() is needed to force the iterating process.
let unused1 = (from n in cycle let unused2 = hashset.Add(n) select n).ToArray()
select new { suspect, cycle }
View Code Query or Rule BodyView Code Query or Rule Body
6 namespaces matched
namespaces | cycle | Full Name |
---|---|---|
System.Data.Entity | 3 namespaces | System.Data.Entity |
System.Data.Entity | 2 namespaces | System.Data.Entity |
System.Data.Entity.Migrations | 5 namespaces | System.Data.Entity.Migrations |
FunctionalTests.ProductivityApi .TemplateModels.CsMonsterModel | 2 namespaces | FunctionalTests.ProductivityApi .TemplateModels.CsMonsterModel |
2 namespaces | ||
System.Data.Entity | 9 namespaces | System.Data.Entity |
Statistics
Stat | cycle |
---|---|
Sum: | 0 |
Average: | 0 |
Minimum: | 0 |
Maximum: | 0 |
Standard deviation: | 0 |
Variance: | 0 |
![]() | Rule warning: UI layer shouldn't use directly DB types |
warnif count > 0
// UI layer is made of types in namespaces using a UI framework
let uiTypes = Application.Namespaces.UsingAny(Assemblies.WithNameIn("PresentationFramework", "System.Windows", "System.Windows.Forms", "System.Web")).ChildTypes()
// You can easily customize this line to define what are DB types.
let dbTypes = ThirdParty.Assemblies.WithNameIn("System.Data", "EntityFramework", "NHibernate").ChildTypes()
// Ideally even DataSet and associated, usage should be forbidden from UI layer:
// http://stackoverflow.com/questions/1708690/is-list-better-than-dataset-for-ui-layer-in-asp-net
.Except(ThirdParty.Types.WithNameIn("DataSet", "DataTable", "DataRow"))
from uiType in uiTypes.UsingAny(dbTypes)
let dbTypesUsed = dbTypes.Intersect(uiType.TypesUsed)
select new { uiType, dbTypesUsed }View Code Query or Rule BodyView Code Query or Rule Body
23 types matched
types | dbTypesUsed | Full Name |
---|---|---|
IndentedTextWriterTests | 1 type | System.Data.Entity.Migrations.Utilities .IndentedTextWriterTests |
MigrationsConfigurationFinderTests | 2 types | System.Data.Entity.Migrations.Utilities .MigrationsConfigurationFinderTests |
MigrationsConfigurationFinderTests+Conte xtWithMigrations | 2 types | System.Data.Entity.Migrations.Utilities .MigrationsConfigurationFinderTests+Cont extWithMigrations |
MigrationsConfigurationFinderTests+Disco verableConfig | 2 types | System.Data.Entity.Migrations.Utilities .MigrationsConfigurationFinderTests+Disc overableConfig |
MigrationsConfigurationFinderTests+Conte xtWithGenericConfig | 2 types | System.Data.Entity.Migrations.Utilities .MigrationsConfigurationFinderTests+Cont extWithGenericConfig |
MigrationsConfigurationFinderTests+Gener icConfig<T> | 2 types | System.Data.Entity.Migrations.Utilities .MigrationsConfigurationFinderTests+Gene ricConfig<T> |
MigrationsConfigurationFinderTests+Conte xtWithAbstractConfig | 2 types | System.Data.Entity.Migrations.Utilities .MigrationsConfigurationFinderTests+Cont extWithAbstractConfig |
MigrationsConfigurationFinderTests+Abstr actConfig | 2 types | System.Data.Entity.Migrations.Utilities .MigrationsConfigurationFinderTests+Abst ractConfig |
MigrationsConfigurationFinderTests+Conte xtWithNoConstructorConfig | 2 types | System.Data.Entity.Migrations.Utilities .MigrationsConfigurationFinderTests+Cont extWithNoConstructorConfig |
MigrationsConfigurationFinderTests+NoCon structorConfig | 2 types | System.Data.Entity.Migrations.Utilities .MigrationsConfigurationFinderTests+NoCo nstructorConfig |
MigrationsConfigurationFinderTests+Conte xtWithNoConfig | 2 types | System.Data.Entity.Migrations.Utilities .MigrationsConfigurationFinderTests+Cont extWithNoConfig |
MigrationsConfigurationFinderTests+Conte xtWithMultipleConfigs | 2 types | System.Data.Entity.Migrations.Utilities .MigrationsConfigurationFinderTests+Cont extWithMultipleConfigs |
MigrationsConfigurationFinderTests+Multi pleConfig | 2 types | System.Data.Entity.Migrations.Utilities .MigrationsConfigurationFinderTests+Mult ipleConfig |
MigrationsConfigurationFinderTests+Outer +MultipleConfig | 2 types | System.Data.Entity.Migrations.Utilities .MigrationsConfigurationFinderTests+Oute r+MultipleConfig |
MigrationsConfigurationFinderTests+Conte xtWithBadConfig | 2 types | System.Data.Entity.Migrations.Utilities .MigrationsConfigurationFinderTests+Cont extWithBadConfig |
MigrationsConfigurationFinderTests+BadCo nfig | 2 types | System.Data.Entity.Migrations.Utilities .MigrationsConfigurationFinderTests+BadC onfig |
PartialTrustMigrationsConfigurationFinde rTests | 2 types | System.Data.Entity.Migrations.Utilities .PartialTrustMigrationsConfigurationFind erTests |
PartialTrustMigrationsConfigurationFinde rTests+ContextWithBadConfig | 2 types | System.Data.Entity.Migrations.Utilities .PartialTrustMigrationsConfigurationFind erTests+ContextWithBadConfig |
PartialTrustMigrationsConfigurationFinde rTests+BadConfig | 2 types | System.Data.Entity.Migrations.Utilities .PartialTrustMigrationsConfigurationFind erTests+BadConfig |
MigrationWriterTests | 1 type | System.Data.Entity.Migrations.Utilities .MigrationWriterTests |
ConfigurationFileUpdaterTests | 1 type | System.Data.Entity.Migrations.Utilities .ConfigurationFileUpdaterTests |
DatabaseCreatorTests | 2 types | System.Data.Entity.Migrations.Utilities .DatabaseCreatorTests |
EmptyContextTests | 4 types | System.Data.Entity.Migrations.Utilities .EmptyContextTests |
Statistics
Stat | dbTypesUsed |
---|---|
Sum: | 0 |
Average: | 0 |
Minimum: | 0 |
Maximum: | 0 |
Standard deviation: | 0 |
Variance: | 0 |
![]() | Rule warning: UI layer shouldn't use directly DAL layer |
warnif count > 0
// UI layer is made of types in namespaces using a UI framework
let uiTypes = Application.Namespaces.UsingAny(Assemblies.WithNameIn("PresentationFramework", "System.Windows", "System.Windows.Forms", "System.Web")).ChildTypes()
// Exclude commonly used DataSet and associated, from ADO.Net types
// You can easily customize this line to define what are DB types.
let dbTypes = ThirdParty.Assemblies.WithNameIn("System.Data", "EntityFramework", "NHibernate").ChildTypes()
.Except(ThirdParty.Types.WithNameIn("DataSet", "DataTable", "DataRow"))
// DAL layer is made of types in namespaces using a DB framework
// .ToHashSet() results to faster execution of dalTypes.Intersect(uiType.TypesIUse).
let dalTypes = Application.Namespaces.UsingAny(dbTypes).ChildTypes().ToHashSet()
from uiType in uiTypes.UsingAny(dalTypes)
let dalTypesUsed = dalTypes.Intersect(uiType.TypesUsed)
select new {
uiType,
// if dalTypesUsed is empty, it means that the uiType is part of the DAL
dalTypesUsed
}View Code Query or Rule BodyView Code Query or Rule Body
14 types matched
types | dalTypesUsed | Full Name |
---|---|---|
MigrationsConfigurationFinderTests | 16 types | System.Data.Entity.Migrations.Utilities .MigrationsConfigurationFinderTests |
MigrationsConfigurationFinderTests+Disco verableConfig | 1 type | System.Data.Entity.Migrations.Utilities .MigrationsConfigurationFinderTests+Disc overableConfig |
MigrationsConfigurationFinderTests+Gener icConfig<T> | 1 type | System.Data.Entity.Migrations.Utilities .MigrationsConfigurationFinderTests+Gene ricConfig<T> |
MigrationsConfigurationFinderTests+Abstr actConfig | 1 type | System.Data.Entity.Migrations.Utilities .MigrationsConfigurationFinderTests+Abst ractConfig |
MigrationsConfigurationFinderTests+NoCon structorConfig | 1 type | System.Data.Entity.Migrations.Utilities .MigrationsConfigurationFinderTests+NoCo nstructorConfig |
MigrationsConfigurationFinderTests+Multi pleConfig | 1 type | System.Data.Entity.Migrations.Utilities .MigrationsConfigurationFinderTests+Mult ipleConfig |
MigrationsConfigurationFinderTests+Outer | 1 type | System.Data.Entity.Migrations.Utilities .MigrationsConfigurationFinderTests+Oute r |
MigrationsConfigurationFinderTests+Outer +MultipleConfig | 1 type | System.Data.Entity.Migrations.Utilities .MigrationsConfigurationFinderTests+Oute r+MultipleConfig |
MigrationsConfigurationFinderTests+BadCo nfig | 1 type | System.Data.Entity.Migrations.Utilities .MigrationsConfigurationFinderTests+BadC onfig |
PartialTrustMigrationsConfigurationFinde rTests | 4 types | System.Data.Entity.Migrations.Utilities .PartialTrustMigrationsConfigurationFind erTests |
PartialTrustMigrationsConfigurationFinde rTests+BadConfig | 1 type | System.Data.Entity.Migrations.Utilities .PartialTrustMigrationsConfigurationFind erTests+BadConfig |
MigrationWriterTests | 2 types | System.Data.Entity.Migrations.Utilities .MigrationWriterTests |
DatabaseCreatorTests | 4 types | System.Data.Entity.Migrations.Utilities .DatabaseCreatorTests |
EmptyContextTests | 4 types | System.Data.Entity.Migrations.Utilities .EmptyContextTests |
Statistics
Stat | dalTypesUsed |
---|---|
Sum: | 0 |
Average: | 0 |
Minimum: | 0 |
Maximum: | 0 |
Standard deviation: | 0 |
Variance: | 0 |
103
Dead Code |
|
![]() | Query error: Potentially dead Types |
Content of the Rule or Query
warnif count > 0
// Filter procedure for types that should'nt be considered as dead
let canTypeBeConsideredAsDeadProc = new Func<IType, bool>(
t => !t.IsPublic && // Public types might be used by client applications of your assemblies.
t.Name != "Program" &&
!t.IsGeneratedByCompiler &&
// If you don't want to link NDepend.API.dll, you can use your own IsNotDeadCodeAttribute and adapt this rule.
!t.HasAttribute("NDepend.Attributes.IsNotDeadCodeAttribute".AllowNoMatch()) &&
// Exclude static types that define only const fields
// because they cannot be seen as used in IL code.
!(t.IsStatic && t.NbMethods == 0 && !t.Fields.Where(f => !f.IsLiteral).Any()))
// Select types unused
let typesUnused =
from t in JustMyCode.Types where
t.NbTypesUsingMe == 0 && canTypeBeConsideredAsDeadProc(t)
select t
// Dead types = types used only by unused types (recursive)
let deadTypesMetric = typesUnused.FillIterative(
types => from t in codeBase.Application.Types.UsedByAny(types).Except(types)
where canTypeBeConsideredAsDeadProc(t) &&
t.TypesUsingMe.Intersect(types).Count() == t.NbTypesUsingMe
select t)
from t in deadTypesMetric.DefinitionDomain
select new { t, t.TypesUsingMe, depth = deadTypesMetric[t] }View Code Query or Rule BodyView Code Query or Rule Body
![]() | Query error: Potentially dead Methods |
Content of the Rule or Query
warnif count > 0
// Filter procedure for methods that should'nt be considered as dead
let canMethodBeConsideredAsDeadProc = new Func<IMethod, bool>(
m => !m.IsPubliclyVisible && // Public methods might be used by client applications of your assemblies.
!m.IsEntryPoint && // Main() method is not used by-design.
!m.IsExplicitInterfaceImpl && // The IL code never explicitely calls explicit interface methods implementation.
!m.IsClassConstructor && // The IL code never explicitely calls class constructors.
!m.IsFinalizer && // The IL code never explicitely calls finalizers.
!m.IsVirtual && // Only check for non virtual method that are not seen as used in IL.
!(m.IsConstructor && // Don't take account of protected ctor that might be call by a derived ctors.
m.IsProtected) &&
!m.IsEventAdder && // The IL code never explicitely calls events adder/remover.
!m.IsEventRemover &&
!m.IsGeneratedByCompiler &&
!m.ParentType.IsDelegate &&
// Methods tagged with these two attributes are called by the serialization infrastructure.
!m.HasAttribute("System.Runtime.Serialization.OnSerializingAttribute".AllowNoMatch()) &&
!m.HasAttribute("System.Runtime.Serialization.OnDeserializedAttribute".AllowNoMatch()) &&
// If you don't want to link NDepend.API.dll, you can use your own IsNotDeadCodeAttribute and adapt this rule.
!m.HasAttribute("NDepend.Attributes.IsNotDeadCodeAttribute".AllowNoMatch()))
// Get methods unused
let methodsUnused =
from m in JustMyCode.Methods where
m.NbMethodsCallingMe == 0 &&
canMethodBeConsideredAsDeadProc(m)
select m
// Dead methods = methods used only by unused methods (recursive)
let deadMethodsMetric = methodsUnused.FillIterative(
methods => // Unique loop, just to let a chance to build the hashset.
from o in (new object()).ToEnumerable()
// Use a hashet to make Intersect calls much faster!
let hashset = methods.ToHashSet()
from m in codeBase.Application.Methods.UsedByAny(methods).Except(methods)
where canMethodBeConsideredAsDeadProc(m) &&
// Select methods called only by methods already considered as dead
hashset.Intersect(m.MethodsCallingMe).Count() == m.NbMethodsCallingMe
select m)
from m in JustMyCode.Methods.Intersect(deadMethodsMetric.DefinitionDomain)
select new { m, m.MethodsCallingMe, depth = deadMethodsMetric[m] }View Code Query or Rule BodyView Code Query or Rule Body
![]() | Critical Rule warning: Potentially dead Fields |
warnif count > 0
from f in JustMyCode.Fields where
f.NbMethodsUsingMe == 0 &&
!f.IsPublic && // Although not recommended, public fields might be used by client applications of your assemblies.
!f.IsLiteral && // The IL code never explicitely uses literal fields.
!f.IsEnumValue && // The IL code never explicitely uses enumeration value.
f.Name != "value__" && // Field named 'value__' are relative to enumerations and the IL code never explicitely uses them.
!f.HasAttribute("NDepend.Attributes.IsNotDeadCodeAttribute".AllowNoMatch()) &&
!f.IsGeneratedByCompiler
// If you don't want to link NDepend.API.dll, you can use your own IsNotDeadCodeAttribute and adapt this rule.
select fView Code Query or Rule BodyView Code Query or Rule Body
31 fields matched
fields | Full Name |
---|---|
_modelDirectory | System.Data.Entity.Objects .TransactionsTests._modelDirectory |
_workspace | System.Data.Entity.Objects .TransactionsTests._workspace |
_previousConnectionFactory | ProductivityApiTests .SimpleScenariosForSqlCe35 ._previousConnectionFactory |
_previousConnectionFactory | ProductivityApiTests .DbContextTestsForSqlCe ._previousConnectionFactory |
_someInt | ProductivityApiTests .LinqTests+ClassWithContextFieldAndOther Fields._someInt |
_someString | ProductivityApiTests .LinqTests+ClassWithContextFieldAndOther Fields._someString |
_context1 | ProductivityApiTests .LinqTests+ClassWithContextFieldAndOther Fields._context1 |
_context3 | ProductivityApiTests .LinqTests+ClassWithContextFieldAndOther Fields._context3 |
_someIntStatic | ProductivityApiTests .LinqTests+ClassWithContextFieldAndOther Fields._someIntStatic |
_someStringStatic | ProductivityApiTests .LinqTests+ClassWithContextFieldAndOther Fields._someStringStatic |
_context1Static | ProductivityApiTests .LinqTests+ClassWithContextFieldAndOther Fields._context1Static |
_previousConnectionFactory | ProductivityApiTests .SimpleScenariosForSqlCe ._previousConnectionFactory |
_a | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+Bell ._a |
B | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+Bell.B |
C | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+Bell.C |
_e | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+Bell ._e |
F | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+Bell.F |
G | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+Bell.G |
_a | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+String er._a |
B | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+String er.B |
C | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+String er.C |
_e | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+String er._e |
F | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+String er.F |
G | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+String er.G |
_j | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+String er._j |
K | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+String er.K |
L | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+String er.L |
_n | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+String er._n |
O | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+String er.O |
P | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+String er.P |
Instance | System.Data.Entity.Infrastructure .DependencyResolution .ProviderServicesFactoryTests+FakeProvid erWithNullInstance.Instance |
Statistics
Stat |
---|
Sum: |
Average: |
Minimum: |
Maximum: |
Standard deviation: |
Variance: |
272
Visibility |
|
![]() | Query error: Methods that could have a lower visibility |
Content of the Rule or Query
warnif count > 0 from m in JustMyCode.Methods where
m.Visibility != m.OptimalVisibility &&
!m.HasAttribute("NDepend.Attributes.CannotDecreaseVisibilityAttribute".AllowNoMatch()) &&
!m.HasAttribute("NDepend.Attributes.IsNotDeadCodeAttribute".AllowNoMatch()) &&
// If you don't want to link NDepend.API.dll, you can use your own attributes and adapt this rule.
// Eliminate default constructor from the result.
// Whatever the visibility of the declaring class,
// default constructors are public and introduce noise
// in the current rule.
!( m.IsConstructor && m.IsPublic && m.NbParameters == 0) &&
// Don't decrease the visibility of Main() methods.
!m.IsEntryPoint
select new { m,
m.Visibility ,
CouldBeDeclared = m.OptimalVisibility,
m.MethodsCallingMe }View Code Query or Rule BodyView Code Query or Rule Body
![]() | Rule warning: Types that could have a lower visibility |
warnif count > 0 from t in JustMyCode.Types where
t.Visibility != t.OptimalVisibility &&
// If you don't want to link NDepend.API.dll, you can use your own attributes and adapt this rule.
!t.HasAttribute("NDepend.Attributes.CannotDecreaseVisibilityAttribute".AllowNoMatch()) &&
!t.HasAttribute("NDepend.Attributes.IsNotDeadCodeAttribute".AllowNoMatch()) &&
// Static types that define only const fields cannot be seen as used in IL code.
// They don't have to be tagged with CannotDecreaseVisibilityAttribute.
!( t.IsStatic &&
!t.Methods.Any(m => !m.IsClassConstructor) &&
!t.Fields.Any(f => !f.IsLiteral && !(f.IsStatic && f.IsInitOnly))) &&
// A type used by an interface that has the same visibility
// cannot have its visibility decreased, else a compilation error occurs!
!t.TypesUsingMe.Any(tUser =>
tUser.IsInterface &&
tUser.Visibility == t.Visibility)
select new { t, t.Visibility ,
CouldBeDeclared = t.OptimalVisibility,
t.TypesUsingMe }
View Code Query or Rule BodyView Code Query or Rule Body
3,581 types matched
types | Visibility | CouldBeDeclared | TypesUsingMe | Full Name |
---|---|---|---|---|
AnnotationAttributeBuilder | Public | Internal | 1 type | System.Data.Entity .AnnotationAttributeBuilder |
DynamicEnumType | Public | Internal | 3 types | System.Data.Entity.DynamicEnumType |
GenericProviderServices | Public | Internal | 1 type | System.Data.Entity .GenericProviderServices |
ModelAssertions+CompositeParameterAssert ions | Internal | Private | 1 type | System.Data.Entity .ModelAssertions+CompositeParameterAsser tions |
AdventureWorksModelBuilder | Public | Internal | 49 types | System.Data.Entity .AdventureWorksModelBuilder |
DynamicTypeDescriptionConfiguration<T> | Public | Internal | 6 types | System.Data.Entity .DynamicTypeDescriptionConfiguration<T> |
DbDatabaseMappingExtensions | Public | Internal | 36 types | System.Data.Entity .DbDatabaseMappingExtensions |
TableSplittingTests | Public | Internal | 0 type | System.Data.Entity.CodeFirst .TableSplittingTests |
TableSplittingTests+E1 | Public | Private | 3 types | System.Data.Entity.CodeFirst .TableSplittingTests+E1 |
TableSplittingTests+E2 | Public | Private | 3 types | System.Data.Entity.CodeFirst .TableSplittingTests+E2 |
TableSplittingTests+E3 | Public | Private | 3 types | System.Data.Entity.CodeFirst .TableSplittingTests+E3 |
TableSplittingTests+B1 | Public | Private | 1 type | System.Data.Entity.CodeFirst .TableSplittingTests+B1 |
TableSplittingTests+C1 | Public | Private | 1 type | System.Data.Entity.CodeFirst .TableSplittingTests+C1 |
TableSplittingTests+Z | Public | Private | 3 types | System.Data.Entity.CodeFirst .TableSplittingTests+Z |
TptMappingTests | Public | Internal | 0 type | System.Data.Entity.CodeFirst .TptMappingTests |
TptMappingTests+AA | Public | Private | 2 types | System.Data.Entity.CodeFirst .TptMappingTests+AA |
TptMappingTests+AB | Public | Private | 2 types | System.Data.Entity.CodeFirst .TptMappingTests+AB |
TptMappingTests+BA | Public | Private | 2 types | System.Data.Entity.CodeFirst .TptMappingTests+BA |
TptMappingTests+BB | Public | Private | 2 types | System.Data.Entity.CodeFirst .TptMappingTests+BB |
BasicDesignTimeScenarios | Public | Internal | 0 type | System.Data.Entity.Design .BasicDesignTimeScenarios |
EnumOCMappingTests | Public | Internal | 6 types | System.Data.Entity.MetadataMapping .EnumOCMappingTests |
CollationSerializer | Public | Internal | 1 type | System.Data.Entity.TestHelpers .CollationSerializer |
FakeProviderFactoryResolver | Public | Internal | 1 type | System.Data.Entity.TestHelpers .FakeProviderFactoryResolver |
FakeProviderServicesResolver | Public | Internal | 1 type | System.Data.Entity.TestHelpers .FakeProviderServicesResolver |
IndexAttributeEqualityComparer | Public | Internal | 1 type | System.Data.Entity.TestHelpers .IndexAttributeEqualityComparer |
RegisterMutableResolver | Public | Internal | 1 type | System.Data.Entity.TestHelpers .RegisterMutableResolver |
UniqueConstraintInfo | Public | Internal | 1 type | System.Data.Entity.Migrations .UniqueConstraintInfo |
ShopContextConfiguration_v1b | Public | Internal | 0 type | System.Data.Entity.Migrations .ShopContextConfiguration_v1b |
ProcessedTransaction | Public | Internal | 1 type | System.Data.Entity.Migrations .ProcessedTransaction |
Role | Public | Internal | 1 type | System.Data.Entity.Migrations .UserRoles_v1.Role |
Role | Public | Internal | 1 type | System.Data.Entity.Migrations .UserRoles_v2.Role |
ColumnRenameDerived | Public | Internal | 0 type | System.Data.Entity.Migrations .OSpaceRenames_v1.ColumnRenameDerived |
ComplexType | Public | Internal | 1 type | System.Data.Entity.Migrations .OSpaceRenames_v1.ComplexType |
IaParent | Public | Internal | 1 type | System.Data.Entity.Migrations .OSpaceRenames_v1.IaParent |
ColumnRenameDerived | Public | Internal | 0 type | System.Data.Entity.Migrations .OSpaceRenames_v2.ColumnRenameDerived |
OrphanedColumnParent | Public | Internal | 1 type | System.Data.Entity.Migrations .OSpaceRenames_v2.OrphanedColumnParent |
AdvancedMappingScenarioTests+SomeRole | Public | Private | 1 type | FunctionalTests .AdvancedMappingScenarioTests+SomeRole |
AdvancedMappingScenarioTests+SomeUser | Public | Private | 1 type | FunctionalTests .AdvancedMappingScenarioTests+SomeUser |
AdvancedMappingScenarioTests+UserRole | Public | Private | 3 types | FunctionalTests .AdvancedMappingScenarioTests+UserRole |
AdvancedMappingScenarioTests+MaxLengthPr operties | Public | Private | 1 type | FunctionalTests .AdvancedMappingScenarioTests+MaxLengthP roperties |
AdvancedMappingScenarioTests+EntityWithC onfiguredDuplicateColumn | Public | Private | 1 type | FunctionalTests .AdvancedMappingScenarioTests+EntityWith ConfiguredDuplicateColumn |
AdvancedMappingScenarioTests+EntityWithD escA | Public | Private | 1 type | FunctionalTests .AdvancedMappingScenarioTests+EntityWith DescA |
AdvancedMappingScenarioTests+EntityWithD escB | Public | Private | 1 type | FunctionalTests .AdvancedMappingScenarioTests+EntityWith DescB |
AdvancedMappingScenarioTests+EntityWithD escC | Public | Private | 1 type | FunctionalTests .AdvancedMappingScenarioTests+EntityWith DescC |
AdvancedMappingScenarioTests+ComplexWith Desc | Public | Private | 4 types | FunctionalTests .AdvancedMappingScenarioTests+ComplexWit hDesc |
AdvancedMappingScenarioTests+SplitProduc t | Public | Private | 2 types | FunctionalTests .AdvancedMappingScenarioTests+SplitProdu ct |
AdvancedMappingScenarioTests+SplitProduc tDetail | Public | Private | 2 types | FunctionalTests .AdvancedMappingScenarioTests+SplitProdu ctDetail |
AdvancedMappingScenarioTests+DecimalKey | Public | Private | 1 type | FunctionalTests .AdvancedMappingScenarioTests+DecimalKey |
AdvancedMappingScenarioTests+DecimalDepe ndent | Public | Private | 3 types | FunctionalTests .AdvancedMappingScenarioTests+DecimalDep endent |
AdvancedMappingScenarioTests+SingleAbstr act | Public | Private | 1 type | FunctionalTests .AdvancedMappingScenarioTests+SingleAbst ract |
AdvancedMappingScenarioTests+StockOrder | Public | Private | 4 types | FunctionalTests .AdvancedMappingScenarioTests+StockOrder |
AdvancedMappingScenarioTests+Organizatio n | Public | Private | 3 types | FunctionalTests .AdvancedMappingScenarioTests+Organizati on |
AdvancedMappingScenarioTests+Location | Public | Private | 3 types | FunctionalTests .AdvancedMappingScenarioTests+Location |
AdvancedMappingScenarioTests+CodePlex218 1 | Public | Private | 1 type | FunctionalTests .AdvancedMappingScenarioTests+CodePlex21 81 |
AdvancedMappingScenarioTests+CodePlex218 1+LoginInformation | Public | Internal | 3 types | FunctionalTests .AdvancedMappingScenarioTests+CodePlex21 81+LoginInformation |
AdvancedMappingScenarioTests+CodePlex218 1+Administrator | Public | Internal | 2 types | FunctionalTests .AdvancedMappingScenarioTests+CodePlex21 81+Administrator |
AssociationScenarioTests+Dependent_17294 9 | Public | Private | 2 types | FunctionalTests .AssociationScenarioTests+Dependent_1729 49 |
AssociationScenarioTests+Principal_17294 9 | Public | Private | 2 types | FunctionalTests .AssociationScenarioTests+Principal_1729 49 |
AssociationScenarioTests+Principal_15900 1 | Public | Private | 3 types | FunctionalTests .AssociationScenarioTests+Principal_1590 01 |
AssociationScenarioTests+Dependent_15900 1a | Public | Private | 1 type | FunctionalTests .AssociationScenarioTests+Dependent_1590 01a |
AssociationScenarioTests+Dependent_15900 1b | Public | Private | 1 type | FunctionalTests .AssociationScenarioTests+Dependent_1590 01b |
AssociationScenarioTests+PrincipalWithNa v_159001a | Public | Private | 2 types | FunctionalTests .AssociationScenarioTests+PrincipalWithN av_159001a |
AssociationScenarioTests+DependentWithNa v_159001a | Public | Private | 2 types | FunctionalTests .AssociationScenarioTests+DependentWithN av_159001a |
AssociationScenarioTests+Principal_18190 9 | Public | Private | 2 types | FunctionalTests .AssociationScenarioTests+Principal_1819 09 |
AssociationScenarioTests+Dependent_18190 9 | Public | Private | 2 types | FunctionalTests .AssociationScenarioTests+Dependent_1819 09 |
AssociationScenarioTests+Order_181909 | Public | Private | 2 types | FunctionalTests .AssociationScenarioTests+Order_181909 |
AssociationScenarioTests+OrderLine_18190 9 | Public | Private | 2 types | FunctionalTests .AssociationScenarioTests+OrderLine_1819 09 |
AssociationScenarioTests+Dependent_16234 8 | Public | Private | 1 type | FunctionalTests .AssociationScenarioTests+Dependent_1623 48 |
AssociationScenarioTests+Dependent_6927 | Public | Private | 2 types | FunctionalTests .AssociationScenarioTests+Dependent_6927 |
AssociationScenarioTests+Principal_6927 | Public | Private | 2 types | FunctionalTests .AssociationScenarioTests+Principal_6927 |
AssociationScenarioTests+DependentWithNu llableFkIdentifying | Public | Private | 2 types | FunctionalTests .AssociationScenarioTests+DependentWithN ullableFkIdentifying |
AssociationScenarioTests+PrincipalWithNu llableFkIdentifying | Public | Private | 2 types | FunctionalTests .AssociationScenarioTests+PrincipalWithN ullableFkIdentifying |
AssociationScenarioTests+DependentWithNu llableFk | Public | Private | 2 types | FunctionalTests .AssociationScenarioTests+DependentWithN ullableFk |
AssociationScenarioTests+PrincipalWithNu llableFk | Public | Private | 2 types | FunctionalTests .AssociationScenarioTests+PrincipalWithN ullableFk |
AssociationScenarioTests+ProductManyToMa nyTableNaming | Public | Private | 2 types | FunctionalTests .AssociationScenarioTests+ProductManyToM anyTableNaming |
AssociationScenarioTests+SupplierManyToM anyTableNaming | Public | Private | 2 types | FunctionalTests .AssociationScenarioTests+SupplierManyTo ManyTableNaming |
AssociationScenarioTests+Principal144934 | Public | Private | 2 types | FunctionalTests .AssociationScenarioTests+Principal14493 4 |
AssociationScenarioTests+Dependent144934 | Public | Private | 2 types | FunctionalTests .AssociationScenarioTests+Dependent14493 4 |
AssociationScenarioTests+Dependent144843 | Public | Private | 2 types | FunctionalTests .AssociationScenarioTests+Dependent14484 3 |
AssociationScenarioTests+Principal144843 | Public | Private | 2 types | FunctionalTests .AssociationScenarioTests+Principal14484 3 |
AssociationScenarioTests+DerivedDependen tManyToManySelf | Public | Private | 1 type | FunctionalTests .AssociationScenarioTests+DerivedDepende ntManyToManySelf |
AssociationScenarioTests+DependentSelfRe fInverseRequired | Public | Private | 1 type | FunctionalTests .AssociationScenarioTests+DependentSelfR efInverseRequired |
AssociationScenarioTests+DerivedPrincipa lKeyOrder | Public | Private | 1 type | FunctionalTests .AssociationScenarioTests+DerivedPrincip alKeyOrder |
AssociationScenarioTests+DerivedDependen tKeyOrder | Public | Private | 1 type | FunctionalTests .AssociationScenarioTests+DerivedDepende ntKeyOrder |
AssociationScenarioTests+DerivedDependen tSelfRefInverse | Public | Private | 1 type | FunctionalTests .AssociationScenarioTests+DerivedDepende ntSelfRefInverse |
AssociationScenarioTests+DerivedDependen tFkAbstract | Public | Private | 1 type | FunctionalTests .AssociationScenarioTests+DerivedDepende ntFkAbstract |
AssociationScenarioTests+DerivedPrincipa lFkAbstract | Public | Private | 1 type | FunctionalTests .AssociationScenarioTests+DerivedPrincip alFkAbstract |
AssociationScenarioTests+DerivedDependen tSelfRef | Public | Private | 2 types | FunctionalTests .AssociationScenarioTests+DerivedDepende ntSelfRef |
AssociationScenarioTests+DependentWeirdK eyOrder | Public | Private | 1 type | FunctionalTests .AssociationScenarioTests+DependentWeird KeyOrder |
AssociationScenarioTests+DependentWeirdK eyOrder2 | Public | Private | 1 type | FunctionalTests .AssociationScenarioTests+DependentWeird KeyOrder2 |
AssociationScenarioTests+PrincipalWeirdK eyOrder | Public | Private | 3 types | FunctionalTests .AssociationScenarioTests+PrincipalWeird KeyOrder |
AssociationScenarioTests+DependentNoPrin cipalNavRequired | Public | Private | 1 type | FunctionalTests .AssociationScenarioTests+DependentNoPri ncipalNavRequired |
AssociationScenarioTests+DependentNoPrin cipalNavOptional | Public | Private | 1 type | FunctionalTests .AssociationScenarioTests+DependentNoPri ncipalNavOptional |
AssociationScenarioTests+PrincipalNoPrin cipalNav | Public | Private | 3 types | FunctionalTests .AssociationScenarioTests+PrincipalNoPri ncipalNav |
AssociationScenarioTests+DependentPrinci palNavOptional | Public | Private | 2 types | FunctionalTests .AssociationScenarioTests+DependentPrinc ipalNavOptional |
AssociationScenarioTests+PrincipalPrinci palNavOptional | Public | Private | 2 types | FunctionalTests .AssociationScenarioTests+PrincipalPrinc ipalNavOptional |
AssociationScenarioTests+DependentPrinci palNavRequired | Public | Private | 2 types | FunctionalTests .AssociationScenarioTests+DependentPrinc ipalNavRequired |
AssociationScenarioTests+PrincipalPrinci palNavRequired | Public | Private | 2 types | FunctionalTests .AssociationScenarioTests+PrincipalPrinc ipalNavRequired |
AssociationScenarioTests+DependentPrinci palNavRequiredDependent | Public | Private | 2 types | FunctionalTests .AssociationScenarioTests+DependentPrinc ipalNavRequiredDependent |
AssociationScenarioTests+PrincipalPrinci palNavRequiredDependent | Public | Private | 2 types | FunctionalTests .AssociationScenarioTests+PrincipalPrinc ipalNavRequiredDependent |
Statistics
Stat | Visibility | CouldBeDeclared | TypesUsingMe |
---|---|---|---|
Sum: | 0 | 0 | 0 |
Average: | 0 | 0 | 0 |
Minimum: | 0 | 0 | 0 |
Maximum: | 0 | 0 | 0 |
Standard deviation: | 0 | 0 | 0 |
Variance: | 0 | 0 | 0 |
![]() | Rule warning: Fields that could have a lower visibility |
warnif count > 0 from f in JustMyCode.Fields where
f.Visibility != f.OptimalVisibility &&
!f.HasAttribute("NDepend.Attributes.CannotDecreaseVisibilityAttribute".AllowNoMatch()) &&
!f.HasAttribute("NDepend.Attributes.IsNotDeadCodeAttribute".AllowNoMatch())
// If you don't want to link NDepend.API.dll, you can use your own attributes and adapt this rule.
select new { f,
f.Visibility ,
CouldBeDeclared = f.OptimalVisibility,
f.MethodsUsingMe }View Code Query or Rule BodyView Code Query or Rule Body
66 fields matched
fields | Visibility | CouldBeDeclared | MethodsUsingMe | Full Name |
---|---|---|---|---|
Instance | Public | Internal | 2 methods | System.Data.Entity .GenericProviderServices.Instance |
PersonFirstNameExpr | Public | Internal | 2 methods | FunctionalTests .DataAnnotationScenarioTests+PrivateMemb erAnnotationClass.PersonFirstNameExpr |
PersonFirstNameObjectExpr | Public | Internal | 2 methods | FunctionalTests .DataAnnotationScenarioTests+PrivateMemb erAnnotationClass .PersonFirstNameObjectExpr |
ShouldRollBack | Public | Internal | 8 methods | System.Data.Entity.Interception .CommitFailureTests+FailingTransactionIn terceptor.ShouldRollBack |
Instance | Public | Internal | 26 methods | System.Data.Entity.WrappingProvider .WrappingAdoNetProvider<TBase>.Instance |
Instance | Public | Internal | 8 methods | System.Data.Entity.WrappingProvider .WrappingEfProvider<TAdoNetBase,TEfBase> .Instance |
Csdl | Public | Internal | 4 methods | System.Data.Entity.Query.ProductModel .Csdl |
StaticField | Public | Internal | 2 methods | System.Data.Entity.Query.LinqToEntities .FuncletizationTests+StubClass .StaticField |
Products | Public | Private | 1 method | ProductivityApiTests .DbContextTests+MethodsAndFieldsVariant .Products |
Categories | Public | Private | 1 method | ProductivityApiTests .DbContextTests+MethodsAndFieldsVariant .Categories |
Logins | Public | Private | 1 method | ProductivityApiTests .DbContextTests+MethodsAndFieldsVariant .Logins |
StartingConnectionString | Public | Internal | 4 methods | ProductivityApiTests .DatabaseTests+MutatingConnectionContext <TContext>.StartingConnectionString |
ChangedConnectionString | Public | Internal | 4 methods | ProductivityApiTests .DatabaseTests+MutatingConnectionContext <TContext>.ChangedConnectionString |
ChangedConnectionString | Public | Internal | 3 methods | ProductivityApiTests .DatabaseTests+MutatingConnectionContext 5.ChangedConnectionString |
ValidateEntityFunc | Public | Internal | 4 methods | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .SelfPopulatingContext .ValidateEntityFunc |
ShouldValidateEntityFunc | Public | Internal | 3 methods | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .SelfPopulatingContext .ShouldValidateEntityFunc |
ValidateWithoutContextFunc | Public | Internal | 2 methods | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .EntityWithPropertyLevelCustomValidation Attributes.ValidateWithoutContextFunc |
ValidateWithContextFunc | Public | Internal | 2 methods | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .EntityWithPropertyLevelCustomValidation Attributes.ValidateWithContextFunc |
ValidateWithoutContextFunc | Public | Internal | 2 methods | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .EntityWithEntityLevelCustomValidationAt tributes.ValidateWithoutContextFunc |
ValidateWithContextFunc | Public | Internal | 2 methods | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .EntityWithEntityLevelCustomValidationAt tributes.ValidateWithContextFunc |
ValidateWithoutContextFunc | Public | Internal | 4 methods | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .ComplexTypeWithTypeLevelCustomValidatio nAttributes.ValidateWithoutContextFunc |
ValidateWithContextFunc | Public | Internal | 4 methods | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .ComplexTypeWithTypeLevelCustomValidatio nAttributes.ValidateWithContextFunc |
ValidateWithoutContextFunc | Public | Internal | 2 methods | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .EntityWithComplexTypeLevelCustomValidat ionAttributes.ValidateWithoutContextFunc |
ValidateFunc | Public | Internal | 2 methods | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .EntityWithAllKindsOfValidation .ValidateFunc |
CustomValidateFunc | Public | Internal | 2 methods | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .EntityWithAllKindsOfValidation .CustomValidateFunc |
KnownBuildingGuid | Public | Private | 7 methods | TemplateTests.KnownBuildingGuid |
Field | Public | Private | 2 methods | System.Data.Entity.Utilities .MemberInfoExtensionsTests+GetValue+Fake ForGetValue.Field |
B | Internal | Private | 0 method | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+Bell.B |
C | Protected | Private | 0 method | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+Bell.C |
D | Public | Private | 0 method | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+Bell.D |
F | Internal | Private | 0 method | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+Bell.F |
G | Protected | Private | 0 method | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+Bell.G |
H | Public | Private | 0 method | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+Bell.H |
B | Internal | Private | 0 method | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+String er.B |
C | Protected | Private | 0 method | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+String er.C |
D | Public | Private | 0 method | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+String er.D |
F | Internal | Private | 0 method | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+String er.F |
G | Protected | Private | 0 method | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+String er.G |
H | Public | Private | 0 method | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+String er.H |
K | Internal | Private | 0 method | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+String er.K |
L | Protected | Private | 0 method | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+String er.L |
M | Public | Private | 0 method | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+String er.M |
O | Internal | Private | 0 method | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+String er.O |
P | Protected | Private | 0 method | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+String er.P |
Q | Public | Private | 0 method | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+String er.Q |
ValidateEntityFunc | Public | Private | 1 method | System.Data.Entity.Validation .SelfPopulatingContext .ValidateEntityFunc |
ShouldValidateEntityFunc | Public | Private | 1 method | System.Data.Entity.Validation .SelfPopulatingContext .ShouldValidateEntityFunc |
Writer | Public | Internal | 29 methods | System.Data.Entity.Core.Metadata.Edm .EdmXmlSchemaWriterTests+Fixture.Writer |
UnderlyingWriter | Public | Internal | 7 methods | System.Data.Entity.Core.Metadata.Edm .EdmXmlSchemaWriterTests+Fixture .UnderlyingWriter |
Writer | Public | Internal | 13 methods | System.Data.Entity.Core.Metadata.Edm .MslXmlSchemaWriterTests+Fixture.Writer |
Instance | Public | Internal | 3 methods | System.Data.Entity.Infrastructure .DefaultDbProviderFactoryServiceTests+Fa keProviderFactory2.Instance |
Instance | Public | Internal | 2 methods | System.Data.Entity.Infrastructure .DependencyResolution .ProviderServicesFactoryTests+FakeProvid erWithPublicField.Instance |
Instance | Public | Internal | 11 methods | System.Data.Entity.ModelConfiguration .Internal.UnitTests .FakeSqlProviderFactory.Instance |
Instance | Public | Internal | 24 methods | System.Data.Entity.ModelConfiguration .Internal.UnitTests .FakeSqlProviderServices.Instance |
NewFactory | Public | Internal | 3 methods | System.Data.Entity.Internal .InternalContextTests+MigrationsConfigur ation+DiscoverableConfiguration .NewFactory |
MockToolingFacade | Public | Internal | 6 methods | System.Data.Entity.Migrations .AddMigrationCommandTests+TestableAddMig rationCommand.MockToolingFacade |
MockProject | Public | Private | 2 methods | System.Data.Entity.Migrations .AddMigrationCommandTests+TestableAddMig rationCommand.MockProject |
MockDispatcher | Public | Internal | 2 methods | System.Data.Entity.Migrations .AddMigrationCommandTests+TestableAddMig rationCommand.MockDispatcher |
Messages | Public | Internal | 4 methods | System.Data.Entity.Migrations .AddMigrationCommandTests+TestableAddMig rationCommand.Messages |
Warnings | Public | Internal | 5 methods | System.Data.Entity.Migrations .AddMigrationCommandTests+TestableAddMig rationCommand.Warnings |
Messages | Public | Internal | 5 methods | System.Data.Entity.Migrations .DbMigratorTests+TestLogger.Messages |
CommandTexts | Public | Internal | 3 methods | System.Data.Entity.SqlServerCompact .SqlCeProviderServicesTests+DbCreateData base+TestNonQueryInterceptor .CommandTexts |
Commands | Public | Internal | 5 methods | System.Data.Entity.SqlServer .SqlProviderServicesTests+TestNonQueryIn terceptor.Commands |
Commands | Public | Internal | 4 methods | System.Data.Entity.SqlServer .SqlProviderServicesTests+TestScalarInte rceptor.Commands |
Commands | Public | Internal | 3 methods | System.Data.Entity.SqlServer .SqlProviderServicesTests+TestReaderInte rceptor.Commands |
Commands | Public | Internal | 3 methods | System.Data.Entity.SqlServer .SqlVersionUtilsTests+GetServerType+Test ReaderInterceptor.Commands |
Statistics
Stat | Visibility | CouldBeDeclared | MethodsUsingMe |
---|---|---|---|
Sum: | 0 | 0 | 0 |
Average: | 0 | 0 | 0 |
Minimum: | 0 | 0 | 0 |
Maximum: | 0 | 0 | 0 |
Standard deviation: | 0 | 0 | 0 |
Variance: | 0 | 0 | 0 |
![]() | Rule warning: Types that could be declared as private, nested in a parent type |
// The conditions for a type to be nested into a parent type
// is that the parent type is the only type using it,
// and that the parent type is declared in the same namespace.
//
// Declaring a type as private into a parent type helps enforcing encapsulation.
// But since nested private types are hardly testable, this rule might
// not be applied for types used directly by tests.
warnif count > 0
from t in Application.Types
where !t.IsGeneratedByCompiler &&
!t.IsNested &&
!t.IsPubliclyVisible &&
// Only one type user...
t.TypesUsingMe.Count() == 1
let couldBeNestedIn = t.TypesUsingMe.Single()
where !couldBeNestedIn.IsGeneratedByCompiler &&
// ...declared in the same namespace
couldBeNestedIn.ParentNamespace == t.ParentNamespace
select new { t, couldBeNestedIn }View Code Query or Rule BodyView Code Query or Rule Body
16 types matched
types | couldBeNestedIn | Full Name |
---|---|---|
DynamicTypeDescriptionProvider<T> | DynamicTypeDescriptionConfiguration<T> | System.Data.Entity .DynamicTypeDescriptionProvider<T> |
DynamicTypeDescriptor<T> | DynamicTypeDescriptionProvider<T> | System.Data.Entity.DynamicTypeDescriptor <T> |
ExtendedSqlAzureExecutionStrategy | TestSqlAzureExecutionStrategy | System.Data.Entity.TestHelpers .ExtendedSqlAzureExecutionStrategy |
TestSqlAzureExecutionStrategy | FunctionalTestsConfiguration | System.Data.Entity.TestHelpers .TestSqlAzureExecutionStrategy |
SomeContext | HasChangesTests | System.Data.Entity.ProductivityApi .SomeContext |
TestHelper | DatabaseLogFormatterTests+TestDatabaseLogFormatter | System.Data.Entity.Interception .TestHelper |
CustomSqlGenerator | CustomOperationScenarios | System.Data.Entity.Migrations .CustomSqlGenerator |
MyApplication | MyProject | My.MyApplication |
MyComputer | MyProject | My.MyComputer |
InternalXmlHelper | InternalXmlHelper+RemoveNamespaceAttributesClosure | My.InternalXmlHelper |
IOleMessageFilter | MessageFilter | System.Data.Entity .ConnectionFactoryConfig .IOleMessageFilter |
TestModelBuilderHelpers | ModelConfigurationTests | System.Data.Entity.ModelConfiguration .Configuration.TestModelBuilderHelpers |
PropertyEntryMetadataForMock | MockHelper | System.Data.Entity.Internal .PropertyEntryMetadataForMock |
SimpleContextClass | DbContextTests | ProductivityApiUnitTests .SimpleContextClass |
GenericContextClass<T> | DbContextTests | ProductivityApiUnitTests .GenericContextClass<T> |
DoubleGenericContextClass<T1,T2> | DbContextTests | ProductivityApiUnitTests .DoubleGenericContextClass<T1,T2> |
Statistics
Stat | couldBeNestedIn |
---|---|
Sum: | 0 |
Average: | 0 |
Minimum: | 0 |
Maximum: | 0 |
Standard deviation: | 0 |
Variance: | 0 |
![]() | Rule warning: Avoid publicly visible constant fields |
// Match constant fields which are visible outside their parent assembly.
// Such field, when used outside its parent assembly,
// has its constant value hard-coded into the client assembly.
// Changing the field's value requires to recompile all assemblies
// that use the field.
// Declare the field as static readonly instead. This way, the value can be
// safely changed, without the need to recompile client assemblies.
warnif count > 0
from f in Application.Fields
where f.IsLiteral && f.IsPubliclyVisible
&& !f.IsEnumValue // This situation also applies to enumeration values
// but to avoid too many false positives, per default
// this rule doesn't match these particular fields.
select fView Code Query or Rule BodyView Code Query or Rule Body
32 fields matched
fields | Full Name |
---|---|
AnnotationName | System.Data.Entity.TestHelpers .CollationAttribute.AnnotationName |
McLaren | ConcurrencyModel.Team.McLaren |
Mercedes | ConcurrencyModel.Team.Mercedes |
RedBull | ConcurrencyModel.Team.RedBull |
Ferrari | ConcurrencyModel.Team.Ferrari |
Williams | ConcurrencyModel.Team.Williams |
Renault | ConcurrencyModel.Team.Renault |
ForceIndia | ConcurrencyModel.Team.ForceIndia |
ToroRosso | ConcurrencyModel.Team.ToroRosso |
Lotus | ConcurrencyModel.Team.Lotus |
Hispania | ConcurrencyModel.Team.Hispania |
Sauber | ConcurrencyModel.Team.Sauber |
Virgin | ConcurrencyModel.Team.Virgin |
Csdl | System.Data.Entity.ViewGeneration .PregenContextEdmx.Csdl |
Msl | System.Data.Entity.ViewGeneration .PregenContextEdmx.Msl |
Ssdl | System.Data.Entity.ViewGeneration .PregenContextEdmx.Ssdl |
DefaultDatabaseName | System.Data.Entity.Migrations .DatabaseProviderFixture .DefaultDatabaseName |
NtextLength | System.Data.Entity.Migrations .SqlCeTestDatabase.NtextLength |
Sql | System.Data.Entity.Migrations .DbProviders.Sql |
SqlCe | System.Data.Entity.Migrations .DbProviders.SqlCe |
Ssdl | System.Data.Entity.Query.ProductModel .Ssdl |
Msl | System.Data.Entity.Query.ProductModel .Msl |
DatabaseName | ProductivityApiTests .DatabaseInitializationTests+BooksBase<T >.DatabaseName |
TestArgsTitle | CmdLine.Tests.TestArgs.TestArgsTitle |
TestArgsDescription | CmdLine.Tests.TestArgs .TestArgsDescription |
YArgDescription | CmdLine.Tests.TestArgs.YArgDescription |
TArgDescription | CmdLine.Tests.TestArgs.TArgDescription |
StringArgDefault | CmdLine.Tests.TestArgs.StringArgDefault |
BoolYDefault | CmdLine.Tests.TestArgs.BoolYDefault |
BoolTDefault | CmdLine.Tests.TestArgs.BoolTDefault |
Title | CmdLine.Tests.XCopyCommandArgs.Title |
Description | CmdLine.Tests.XCopyCommandArgs .Description |
Statistics
Stat |
---|
Sum: |
Average: |
Minimum: |
Maximum: |
Standard deviation: |
Variance: |
![]() | Rule warning: Fields should be declared as private |
// Fields should be considered as implementation details
// and as a consequence they should be declared as private.
// When a field is private, the caller cannot get
// inappropriate direct access to the field.
warnif count > 0 from f in Application.Fields where
!f.IsPrivate &&
// These conditions filter cases where fields
// doesn't represent state that should be encapsulated.
!f.IsGeneratedByCompiler &&
!f.IsSpecialName &&
!f.IsInitOnly &&
!f.IsLiteral &&
!f.IsEnumValue
// A non-private field assigned from outside its class,
// usually leads to complicated field state management.
let outsideMethodsAssigningMe =
f.MethodsAssigningMe.Where(m => m.ParentType != f.ParentType)
select new { f,
f.Visibility,
outsideMethodsAssigningMe }View Code Query or Rule BodyView Code Query or Rule Body
44 fields matched
fields | Visibility | outsideMethodsAssigningMe | Full Name |
---|---|---|---|
Instance | Public | 0 method | System.Data.Entity .GenericProviderFactory<T>.Instance |
Instance | Public | 0 method | System.Data.Entity .GenericProviderServices.Instance |
PersonFirstNameExpr | Public | 0 method | FunctionalTests .DataAnnotationScenarioTests+PrivateMemb erAnnotationClass.PersonFirstNameExpr |
PersonFirstNameObjectExpr | Public | 0 method | FunctionalTests .DataAnnotationScenarioTests+PrivateMemb erAnnotationClass .PersonFirstNameObjectExpr |
ShouldRollBack | Public | 7 methods | System.Data.Entity.Interception .CommitFailureTests+FailingTransactionIn terceptor.ShouldRollBack |
StaticField | Public | 0 method | System.Data.Entity.Query.LinqToEntities .FuncletizationTests+StubClass .StaticField |
Products | Public | 0 method | ProductivityApiTests .DbContextTests+MethodsAndFieldsVariant .Products |
Categories | Public | 0 method | ProductivityApiTests .DbContextTests+MethodsAndFieldsVariant .Categories |
Logins | Public | 0 method | ProductivityApiTests .DbContextTests+MethodsAndFieldsVariant .Logins |
StartingConnectionString | Public | 0 method | ProductivityApiTests .DatabaseTests+MutatingConnectionContext <TContext>.StartingConnectionString |
ChangedConnectionString | Public | 0 method | ProductivityApiTests .DatabaseTests+MutatingConnectionContext <TContext>.ChangedConnectionString |
ChangedConnectionString | Public | 0 method | ProductivityApiTests .DatabaseTests+MutatingConnectionContext 5.ChangedConnectionString |
ValidateEntityFunc | Public | 3 methods | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .SelfPopulatingContext .ValidateEntityFunc |
ShouldValidateEntityFunc | Public | 2 methods | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .SelfPopulatingContext .ShouldValidateEntityFunc |
ValidateWithoutContextFunc | Public | 1 method | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .EntityWithPropertyLevelCustomValidation Attributes.ValidateWithoutContextFunc |
ValidateWithContextFunc | Public | 1 method | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .EntityWithPropertyLevelCustomValidation Attributes.ValidateWithContextFunc |
ValidateWithoutContextFunc | Public | 1 method | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .EntityWithEntityLevelCustomValidationAt tributes.ValidateWithoutContextFunc |
ValidateWithContextFunc | Public | 1 method | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .EntityWithEntityLevelCustomValidationAt tributes.ValidateWithContextFunc |
ValidateWithoutContextFunc | Public | 3 methods | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .ComplexTypeWithTypeLevelCustomValidatio nAttributes.ValidateWithoutContextFunc |
ValidateWithContextFunc | Public | 3 methods | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .ComplexTypeWithTypeLevelCustomValidatio nAttributes.ValidateWithContextFunc |
ValidateWithoutContextFunc | Public | 1 method | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .EntityWithComplexTypeLevelCustomValidat ionAttributes.ValidateWithoutContextFunc |
ValidateFunc | Public | 1 method | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .EntityWithAllKindsOfValidation .ValidateFunc |
CustomValidateFunc | Public | 1 method | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .EntityWithAllKindsOfValidation .CustomValidateFunc |
B | Internal | 0 method | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+Bell.B |
C | Protected | 0 method | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+Bell.C |
D | Public | 0 method | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+Bell.D |
F | Internal | 0 method | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+Bell.F |
G | Protected | 0 method | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+Bell.G |
H | Public | 0 method | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+Bell.H |
B | Internal | 0 method | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+String er.B |
C | Protected | 0 method | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+String er.C |
D | Public | 0 method | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+String er.D |
F | Internal | 0 method | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+String er.F |
G | Protected | 0 method | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+String er.G |
H | Public | 0 method | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+String er.H |
K | Internal | 0 method | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+String er.K |
L | Protected | 0 method | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+String er.L |
M | Public | 0 method | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+String er.M |
O | Internal | 0 method | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+String er.O |
P | Protected | 0 method | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+String er.P |
Q | Public | 0 method | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+String er.Q |
ValidateEntityFunc | Public | 0 method | System.Data.Entity.Validation .SelfPopulatingContext .ValidateEntityFunc |
ShouldValidateEntityFunc | Public | 0 method | System.Data.Entity.Validation .SelfPopulatingContext .ShouldValidateEntityFunc |
EntityCommandDefinition | Internal | 3 methods | System.Data.Entity.ModelConfiguration .Internal.UnitTests .FakeSqlProviderServices .EntityCommandDefinition |
Statistics
Stat | Visibility | outsideMethodsAssigningMe |
---|---|---|
Sum: | 0 | 0 |
Average: | 0 | 0 |
Minimum: | 0 | 0 |
Maximum: | 0 | 0 |
Standard deviation: | 0 | 0 |
Variance: | 0 | 0 |
![]() | Critical Rule warning: Constructors of abstract classes should be declared as protected or private |
// Constructors of an abstract class can be accessed only from its class and derived class.
// Declaring such a constructor with another visibility level is useless and potentially misleading.
// Notice that if a constructor of an abstract class is declared as private,
// it can only be accessed from derived classes nested in the abstract class.
warnif count > 0
from t in Application.Types where
t.IsClass &&
t.IsAbstract
let ctors = t.Constructors.Where(c => !c.IsProtected && !c.IsPrivate)
where ctors.Count() > 0
select new { t, ctors }
View Code Query or Rule BodyView Code Query or Rule Body
3 types matched
types | ctors | Full Name |
---|---|---|
KeyConstraintInfo | 1 method | System.Data.Entity.Migrations .KeyConstraintInfo |
BaseDependent | 1 method | FunctionalTests.Bug336706.BaseDependent |
TypeExtensionsTests+CreateInstance+Abstr actConfiguration | 1 method | System.Data.Entity.Utilities .TypeExtensionsTests+CreateInstance+Abst ractConfiguration |
Statistics
Stat | ctors |
---|---|
Sum: | 0 |
Average: | 0 |
Minimum: | 0 |
Maximum: | 0 |
Standard deviation: | 0 |
Variance: | 0 |
![]() | Rule warning: Avoid public methods not publicly visible |
// Matched methods are declared public but are not publicly visible by assemblies consumers.
// Their visibility level must be decreased.
warnif count > 0
from m in JustMyCode.Methods where
!m.IsPubliclyVisible && m.IsPublic &&
// Eliminate virtual methods
!m.IsVirtual &&
// Eliminate interface and delegate types
!m.ParentType.IsInterface &&
!m.ParentType.IsDelegate &&
// Eliminate default constructors
!(m.IsConstructor && m.NbParameters == 0) &&
// Eliminate operators that must be declared public
!m.IsOperator &&
// Eliminate methods generated by compiler
!m.IsGeneratedByCompiler
select mView Code Query or Rule BodyView Code Query or Rule Body
580 methods matched
methods | Full Name |
---|---|
.ctor(Boolean,XDocument[]) | System.Data.Entity .CsdlToClrAssemblyConverter..ctor (Boolean,XDocument[]) |
BuildAssembly(String) | System.Data.Entity .CsdlToClrAssemblyConverter .BuildAssembly(String) |
.ctor(IList <ModificationFunctionParameterBinding>) | System.Data.Entity .ModelAssertions+CompositeParameterAsser tions..ctor(IList <ModificationFunctionParameterBinding>) |
ParameterEqual(Object,Func <FunctionParameter,Object>) | System.Data.Entity .ModelAssertions+CompositeParameterAsser tions.ParameterEqual(Object,Func <FunctionParameter,Object>) |
.ctor(EdmProperty) | System.Data.Entity .ModelAssertions+ColumnAssertions..ctor (EdmProperty) |
DbEqual(Object,Func<EdmProperty,Object>) | System.Data.Entity .ModelAssertions+ColumnAssertions .DbEqual(Object,Func<EdmProperty,Object> ) |
DbIsFalse(Func<EdmProperty,Nullable <Boolean>>) | System.Data.Entity .ModelAssertions+ColumnAssertions .DbIsFalse(Func<EdmProperty,Nullable <Boolean>>) |
HasAnnotation(String,Object ,IEqualityComparer<Object>) | System.Data.Entity .ModelAssertions+ColumnAssertions .HasAnnotation(String,Object ,IEqualityComparer<Object>) |
HasNoAnnotation(String) | System.Data.Entity .ModelAssertions+ColumnAssertions .HasNoAnnotation(String) |
.ctor(EdmProperty,IEnumerable <EdmProperty>) | System.Data.Entity .ModelAssertions+PropertyAssertions. .ctor(EdmProperty,IEnumerable <EdmProperty>) |
IsTrue(Func<TypeUsage,Nullable<Boolean>> ) | System.Data.Entity .ModelAssertions+PropertyAssertions .IsTrue(Func<TypeUsage,Nullable<Boolean> >) |
IsTrue(Func<EdmProperty,Nullable<Boolean >>) | System.Data.Entity .ModelAssertions+PropertyAssertions .IsTrue(Func<EdmProperty,Nullable <Boolean>>) |
IsFalse(Func<TypeUsage,Nullable<Boolean> >) | System.Data.Entity .ModelAssertions+PropertyAssertions .IsFalse(Func<TypeUsage,Nullable<Boolean >>) |
IsFalse(Func<EdmProperty,Nullable <Boolean>>) | System.Data.Entity .ModelAssertions+PropertyAssertions .IsFalse(Func<EdmProperty,Nullable <Boolean>>) |
DbEqual(Object,Func<EdmProperty,Object>) | System.Data.Entity .ModelAssertions+PropertyAssertions .DbEqual(Object,Func<EdmProperty,Object> ) |
DbIsFalse(Func<EdmProperty,Nullable <Boolean>>) | System.Data.Entity .ModelAssertions+PropertyAssertions .DbIsFalse(Func<EdmProperty,Nullable <Boolean>>) |
FacetEqual(Object,Func<TypeUsage,Object> ) | System.Data.Entity .ModelAssertions+PropertyAssertions .FacetEqual(Object,Func<TypeUsage,Object >) |
FacetEqual(Object,Func<EdmProperty ,Object>) | System.Data.Entity .ModelAssertions+PropertyAssertions .FacetEqual(Object,Func<EdmProperty ,Object>) |
MetadataPropertyEqual(Object,String) | System.Data.Entity .ModelAssertions+PropertyAssertions .MetadataPropertyEqual(Object,String) |
AnnotationNull(String) | System.Data.Entity .ModelAssertions+PropertyAssertions .AnnotationNull(String) |
.ctor(EntityType,EntitySet,EdmModel) | System.Data.Entity .ModelAssertions+TypeAssertions..ctor (EntityType,EntitySet,EdmModel) |
DbEqual<T>(T,Func<EntityType,T>) | System.Data.Entity .ModelAssertions+TypeAssertions.DbEqual <T>(T,Func<EntityType,T>) |
DbEqual<T>(T,Func<EntitySet,T>) | System.Data.Entity .ModelAssertions+TypeAssertions.DbEqual <T>(T,Func<EntitySet,T>) |
HasColumns(String[]) | System.Data.Entity .ModelAssertions+TypeAssertions .HasColumns(String[]) |
HasColumn(String) | System.Data.Entity .ModelAssertions+TypeAssertions .HasColumn(String) |
ColumnCountEquals(Int32) | System.Data.Entity .ModelAssertions+TypeAssertions .ColumnCountEquals(Int32) |
Column(String) | System.Data.Entity .ModelAssertions+TypeAssertions.Column (String) |
HasForeignKeyColumn(String) | System.Data.Entity .ModelAssertions+TypeAssertions .HasForeignKeyColumn(String) |
HasForeignKey(IEnumerable<String>,String ) | System.Data.Entity .ModelAssertions+TypeAssertions .HasForeignKey(IEnumerable<String> ,String) |
HasForeignKeyColumn(String,String) | System.Data.Entity .ModelAssertions+TypeAssertions .HasForeignKeyColumn(String,String) |
HasNoForeignKeyColumn(String) | System.Data.Entity .ModelAssertions+TypeAssertions .HasNoForeignKeyColumn(String) |
HasNoForeignKeyColumns() | System.Data.Entity .ModelAssertions+TypeAssertions .HasNoForeignKeyColumns() |
ForeignKeyColumn(String) | System.Data.Entity .ModelAssertions+TypeAssertions .ForeignKeyColumn(String) |
HasAnnotation(String,Object) | System.Data.Entity .ModelAssertions+TypeAssertions .HasAnnotation(String,Object) |
HasNoAnnotation(String) | System.Data.Entity .ModelAssertions+TypeAssertions .HasNoAnnotation(String) |
.ctor(MappingFragment) | System.Data.Entity .ModelAssertions+MappingFragmentAssertio ns..ctor(MappingFragment) |
HasColumnCondition(String,Object) | System.Data.Entity .ModelAssertions+MappingFragmentAssertio ns.HasColumnCondition(String,Object) |
HasNullabilityColumnCondition(String ,Boolean) | System.Data.Entity .ModelAssertions+MappingFragmentAssertio ns.HasNullabilityColumnCondition(String ,Boolean) |
HasNoColumnConditions() | System.Data.Entity .ModelAssertions+MappingFragmentAssertio ns.HasNoColumnConditions() |
HasNoColumnCondition(String) | System.Data.Entity .ModelAssertions+MappingFragmentAssertio ns.HasNoColumnCondition(String) |
HasNoPropertyConditions() | System.Data.Entity .ModelAssertions+MappingFragmentAssertio ns.HasNoPropertyConditions() |
get_StartIndex() | System.Data.Entity .StringResourceVerifier+StringSection .get_StartIndex() |
set_StartIndex(Int32) | System.Data.Entity .StringResourceVerifier+StringSection .set_StartIndex(Int32) |
get_EndIndex() | System.Data.Entity .StringResourceVerifier+StringSection .get_EndIndex() |
set_EndIndex(Int32) | System.Data.Entity .StringResourceVerifier+StringSection .set_EndIndex(Int32) |
.ctor(TypeDescriptionProvider ,DynamicTypeDescriptionConfiguration<T>) | System.Data.Entity .DynamicTypeDescriptionProvider<T>..ctor (TypeDescriptionProvider ,DynamicTypeDescriptionConfiguration<T>) |
.ctor(ICustomTypeDescriptor ,DynamicTypeDescriptionConfiguration<T>) | System.Data.Entity.DynamicTypeDescriptor <T>..ctor(ICustomTypeDescriptor ,DynamicTypeDescriptionConfiguration<T>) |
get_Result() | System.Data.Entity.Design .BasicDesignTimeScenarios+ResultHandler .get_Result() |
get_Id() | System.Data.Entity.Migrations .MigrationsEmployee.get_Id() |
set_Id(Int32) | System.Data.Entity.Migrations .MigrationsEmployee.set_Id(Int32) |
get_ManagerId() | System.Data.Entity.Migrations .MigrationsEmployee.get_ManagerId() |
set_ManagerId(Nullable<Int32>) | System.Data.Entity.Migrations .MigrationsEmployee.set_ManagerId (Nullable<Int32>) |
get_Manager() | System.Data.Entity.Migrations .MigrationsEmployee.get_Manager() |
set_Manager(MigrationsEmployee) | System.Data.Entity.Migrations .MigrationsEmployee.set_Manager (MigrationsEmployee) |
get_DirectReports() | System.Data.Entity.Migrations .MigrationsEmployee.get_DirectReports() |
set_DirectReports(ICollection <MigrationsEmployee>) | System.Data.Entity.Migrations .MigrationsEmployee.set_DirectReports (ICollection<MigrationsEmployee>) |
get_ID() | FunctionalTests .ConventionsScenarioTests+ConventionTest s+BaseEntity.get_ID() |
set_ID(Int32) | FunctionalTests .ConventionsScenarioTests+ConventionTest s+BaseEntity.set_ID(Int32) |
get_Created() | FunctionalTests .ConventionsScenarioTests+ConventionTest s+BaseEntity.get_Created() |
set_Created(DateTime) | FunctionalTests .ConventionsScenarioTests+ConventionTest s+BaseEntity.set_Created(DateTime) |
get_LastModified() | FunctionalTests .ConventionsScenarioTests+ConventionTest s+BaseEntity.get_LastModified() |
set_LastModified(DateTime) | FunctionalTests .ConventionsScenarioTests+ConventionTest s+BaseEntity.set_LastModified(DateTime) |
get_Name() | FunctionalTests .ConventionsScenarioTests+ConventionTest s+DerivedEntity.get_Name() |
set_Name(String) | FunctionalTests .ConventionsScenarioTests+ConventionTest s+DerivedEntity.set_Name(String) |
get_Foos() | System.Data.Entity.ProductivityApi .SomeContext.get_Foos() |
set_Foos(DbSet<Foo>) | System.Data.Entity.ProductivityApi .SomeContext.set_Foos(DbSet<Foo>) |
get_Id() | System.Data.Entity.ProductivityApi.Foo .get_Id() |
set_Id(Int32) | System.Data.Entity.ProductivityApi.Foo .set_Id(Int32) |
get_Bar() | System.Data.Entity.ProductivityApi.Foo .get_Bar() |
set_Bar(String) | System.Data.Entity.ProductivityApi.Foo .set_Bar(String) |
IsCollection(Type) | System.Data.Entity.Functionals.Utilities .TypeExtensions.IsCollection(Type) |
IsCollection(Type,Type&) | System.Data.Entity.Functionals.Utilities .TypeExtensions.IsCollection(Type,Type&) |
GetNonIndexerProperties(Type) | System.Data.Entity.Functionals.Utilities .TypeExtensions.GetNonIndexerProperties (Type) |
TryGetElementType(Type,Type) | System.Data.Entity.Functionals.Utilities .TypeExtensions.TryGetElementType(Type ,Type) |
GetGenericTypeImplementations(Type,Type) | System.Data.Entity.Functionals.Utilities .TypeExtensions .GetGenericTypeImplementations(Type,Type ) |
GetBaseTypes(Type) | System.Data.Entity.Functionals.Utilities .TypeExtensions.GetBaseTypes(Type) |
GetTargetType(Type) | System.Data.Entity.Functionals.Utilities .TypeExtensions.GetTargetType(Type) |
TryUnwrapNullableType(Type,Type&) | System.Data.Entity.Functionals.Utilities .TypeExtensions.TryUnwrapNullableType (Type,Type&) |
IsNullable(Type) | System.Data.Entity.Functionals.Utilities .TypeExtensions.IsNullable(Type) |
IsValidStructuralType(Type) | System.Data.Entity.Functionals.Utilities .TypeExtensions.IsValidStructuralType (Type) |
IsValidStructuralPropertyType(Type) | System.Data.Entity.Functionals.Utilities .TypeExtensions .IsValidStructuralPropertyType(Type) |
IsPrimitiveType(Type,PrimitiveType&) | System.Data.Entity.Functionals.Utilities .TypeExtensions.IsPrimitiveType(Type ,PrimitiveType&) |
IsValidEdmScalarType(Type) | System.Data.Entity.Functionals.Utilities .TypeExtensions.IsValidEdmScalarType (Type) |
NestingNamespace(Type) | System.Data.Entity.Functionals.Utilities .TypeExtensions.NestingNamespace(Type) |
FullNameWithNesting(Type) | System.Data.Entity.Functionals.Utilities .TypeExtensions.FullNameWithNesting(Type ) |
OverridesEqualsOrGetHashCode(Type) | System.Data.Entity.Functionals.Utilities .TypeExtensions .OverridesEqualsOrGetHashCode(Type) |
IsPublic(Type) | System.Data.Entity.Functionals.Utilities .TypeExtensions.IsPublic(Type) |
IsNotPublic(Type) | System.Data.Entity.Functionals.Utilities .TypeExtensions.IsNotPublic(Type) |
GetOnlyDeclaredMethod(Type,String) | System.Data.Entity.Functionals.Utilities .TypeExtensions.GetOnlyDeclaredMethod (Type,String) |
GetDeclaredMethod(Type,String,Type[]) | System.Data.Entity.Functionals.Utilities .TypeExtensions.GetDeclaredMethod(Type ,String,Type[]) |
GetPublicInstanceMethod(Type,String ,Type[]) | System.Data.Entity.Functionals.Utilities .TypeExtensions.GetPublicInstanceMethod (Type,String,Type[]) |
GetRuntimeMethod(Type,String,Func <MethodInfo,Boolean>,Type[][]) | System.Data.Entity.Functionals.Utilities .TypeExtensions.GetRuntimeMethod(Type ,String,Func<MethodInfo,Boolean> ,Type[][]) |
GetDeclaredMethods(Type) | System.Data.Entity.Functionals.Utilities .TypeExtensions.GetDeclaredMethods(Type) |
GetDeclaredMethods(Type,String) | System.Data.Entity.Functionals.Utilities .TypeExtensions.GetDeclaredMethods(Type ,String) |
GetDeclaredProperty(Type,String) | System.Data.Entity.Functionals.Utilities .TypeExtensions.GetDeclaredProperty(Type ,String) |
GetDeclaredProperties(Type) | System.Data.Entity.Functionals.Utilities .TypeExtensions.GetDeclaredProperties (Type) |
GetInstanceProperties(Type) | System.Data.Entity.Functionals.Utilities .TypeExtensions.GetInstanceProperties (Type) |
GetAnyProperty(Type,String) | System.Data.Entity.Functionals.Utilities .TypeExtensions.GetAnyProperty(Type ,String) |
GetInstanceProperty(Type,String) | System.Data.Entity.Functionals.Utilities .TypeExtensions.GetInstanceProperty(Type ,String) |
GetStaticProperty(Type,String) | System.Data.Entity.Functionals.Utilities .TypeExtensions.GetStaticProperty(Type ,String) |
Statistics
Stat |
---|
Sum: |
Average: |
Minimum: |
Maximum: |
Standard deviation: |
Variance: |
![]() | Rule warning: Event handler methods should be declared private |
warnif count > 0
from m in Application.Methods where
!m.IsPrivate &&
// A method is considered as event handler if...
m.NbParameters==2 && // ...it has two parameters..
m.Name.Contains("Object") && // ...of types Object...
m.Name.Contains("EventArgs") && // ...and EventArgs
// Discard special cases
!m.ParentType.IsDelegate &&
!m.IsGeneratedByCompiler
select new { m,m.Visibility }
// This rule implementation relies on the facts that:
// -> A method name contains the type of its parameters.
// -> All EventArgs derived types have the suffix "EventArgs".View Code Query or Rule BodyView Code Query or Rule Body
1 methods matched
method | Visibility | Full Name |
---|---|---|
Handler(Object ,DbConfigurationLoadedEventArgs) | Public | System.Data.Entity.Infrastructure .DependencyResolution .DbConfigurationManagerTests+OnLoaded+Lo adedInterceptor.Handler(Object ,DbConfigurationLoadedEventArgs) |
Statistics
Stat | Visibility |
---|---|
Sum: | 0 |
Average: | 0 |
Minimum: | 0 |
Maximum: | 0 |
Standard deviation: | 0 |
Variance: | 0 |
461
Purity - Immutability - Side-Effects |
|
![]() | Rule warning: Fields should be marked as ReadOnly when possible |
warnif count > 0
from f in JustMyCode.Fields where
f.IsImmutable &&
!f.IsInitOnly &&
!f.IsGeneratedByCompiler &&
!f.IsEventDelegateObject
select new { f, f.SizeOfInst }
// A field that matches the condition IsImmutable
// is a field that is assigned only by constructors
// of its class.
// For an instance field, this means its value
// will remain constant throught the lifetime
// of the object.
// For a static field, this means its value will
// remain constant throught the lifetime of the
// program.
// In both cases, such field can safely be marked
// with the C# readonly keyword
// (ReadOnly in VB.NET).
// The condition IsInitOnly matches fields that
// are marked with the C# readonly keyword
// (ReadOnly in VB.NET).
View Code Query or Rule BodyView Code Query or Rule Body
20 fields matched
fields | Size of instance | Full Name |
---|---|---|
azureExecutionStrategy | 4 | System.Data.Entity.TestHelpers .TestSqlAzureExecutionStrategy .azureExecutionStrategy |
_entitiesCount | 4 | System.Data.Entity.TestModels .ProviderAgnosticModel .ProviderAgnosticContextInitializer ._entitiesCount |
invalidEnumPropertyFacets | N/A | System.Data.Entity.Metadata .MetadataEnumTests .invalidEnumPropertyFacets |
_modelDirectory | 4 | System.Data.Entity.Objects .TransactionsTests._modelDirectory |
_workspace | 4 | System.Data.Entity.Objects .TransactionsTests._workspace |
_someInt | 4 | ProductivityApiTests .LinqTests+ClassWithContextFieldAndOther Fields._someInt |
_someString | 4 | ProductivityApiTests .LinqTests+ClassWithContextFieldAndOther Fields._someString |
_context1 | 4 | ProductivityApiTests .LinqTests+ClassWithContextFieldAndOther Fields._context1 |
_context3 | 4 | ProductivityApiTests .LinqTests+ClassWithContextFieldAndOther Fields._context3 |
_someIntStatic | N/A | ProductivityApiTests .LinqTests+ClassWithContextFieldAndOther Fields._someIntStatic |
_someStringStatic | N/A | ProductivityApiTests .LinqTests+ClassWithContextFieldAndOther Fields._someStringStatic |
_context1Static | N/A | ProductivityApiTests .LinqTests+ClassWithContextFieldAndOther Fields._context1Static |
_a | 4 | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+Bell ._a |
_e | N/A | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+Bell ._e |
_a | 4 | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+String er._a |
_e | N/A | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+String er._e |
_j | 4 | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+String er._j |
_n | N/A | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+String er._n |
csdl | N/A | System.Data.Entity.Core.Common .CommandTrees.DbExpressionBuilderFixture .csdl |
Count | N/A | System.Data.Entity.Core.Metadata.Edm .MetadataOptimizationTests.Count |
Statistics
Stat | Size of instance |
---|---|
Sum: | 44 |
Average: | 4 |
Minimum: | 4 |
Maximum: | 4 |
Standard deviation: | 0 |
Variance: | 0 |
![]() | Rule warning: Structures should be immutable |
warnif count > 0 from t in Application.Types where
t.IsStructure &&
!t.IsImmutable
let mutableFields = t.Fields.Where(f => !f.IsImmutable)
select new { t, t.NbLinesOfCode, mutableFields }
// It is deemed as a good practice to make
// your structure immutable.
// An object is immutable if its state doesn’t
// change once the object has been created.
// Consequently, a structure is immutable if
// its instances are immutable.
// Immutable types naturally simplify code by
// limiting side-effects.
// See some explanations on immutability and
// how NDepend supports it here:
// http://codebetter.com/blogs/patricksmacchia/archive/2008/01/13/immutable-types-understand-them-and-use-them.aspx
View Code Query or Rule BodyView Code Query or Rule Body
14 types matched
types | # lines of code (LOC) | mutableFields | Full Name |
---|---|---|---|
BasicMappingScenarioTests+FancyId | 0 | 2 fields | FunctionalTests .BasicMappingScenarioTests+FancyId |
EnumeratorExtensions+<ToListAsync>d__0<T > | 5 | 6 fields | System.Data.Entity.EnumeratorExtensions+ <ToListAsync>d__0<T> |
DeadlockTests+<>c__DisplayClassa+< <DbEntityEntry_ReloadAsync_does_not_dead lock>b__8>d__c | 2 | 4 fields | System.Data.Entity.ProductivityApi .DeadlockTests+<>c__DisplayClassa+< <DbEntityEntry_ReloadAsync_does_not_dead lock>b__8>d__c |
AsyncScenarios+<QueryAsync>d__0 | 15 | 15 fields | System.Data.Entity.EntityClient .AsyncScenarios+<QueryAsync>d__0 |
AsyncScenarios+<QueryScalarAsync>d__b | 6 | 10 fields | System.Data.Entity.EntityClient .AsyncScenarios+<QueryScalarAsync>d__b |
AsyncScenarios+<NonQueryAsync>d__12 | 6 | 10 fields | System.Data.Entity.EntityClient .AsyncScenarios+<NonQueryAsync>d__12 |
ConcurrencyTests+BlockingStrategy+ <ExecuteAsync>d__da | 2 | 6 fields | ProductivityApiTests .ConcurrencyTests+BlockingStrategy+ <ExecuteAsync>d__da |
ConcurrencyTests+BlockingStrategy+ <ExecuteAsync>d__dd<TResult> | 2 | 7 fields | ProductivityApiTests .ConcurrencyTests+BlockingStrategy+ <ExecuteAsync>d__dd<TResult> |
TaskExtensionsTests+ <GetCurrentCultureAsync>d__0 | 2 | 4 fields | System.Data.Entity.Utilities .TaskExtensionsTests+ <GetCurrentCultureAsync>d__0 |
TaskExtensionsTests+ <GetCurrentCultureAsync>d__3<T> | 2 | 4 fields | System.Data.Entity.Utilities .TaskExtensionsTests+ <GetCurrentCultureAsync>d__3<T> |
TaskExtensionsTests+<ConfigurableYield >d__6 | 1 | 4 fields | System.Data.Entity.Utilities .TaskExtensionsTests+<ConfigurableYield >d__6 |
TaskExtensionsTests+<ConfigurableYield >d__9<T> | 2 | 4 fields | System.Data.Entity.Utilities .TaskExtensionsTests+<ConfigurableYield >d__9<T> |
ValueType | 0 | 1 field | System.Data.Entity.Core.Objects .ValueType |
DbCommandDispatcherTests+<AwaitMe>d__0<T > | 1 | 4 fields | System.Data.Entity.Infrastructure .Interception.DbCommandDispatcherTests+ <AwaitMe>d__0<T> |
Statistics
Stat | # lines of code (LOC) | mutableFields |
---|---|---|
Sum: | 46 | 0 |
Average: | 3.29 | 0 |
Minimum: | 0 | 0 |
Maximum: | 15 | 0 |
Standard deviation: | 3.75 | 0 |
Variance: | 14.06 | 0 |
![]() | Rule warning: Property Getters should be immutable |
warnif count > 0 from m in Application.Methods where
m.IsPropertyGetter &&
( ( !m.IsStatic && m.ChangesObjectState) ||
( m.IsStatic && m.ChangesTypeState) )
let fieldsAssigned = m.FieldsAssigned
select new { m, m.NbLinesOfCode, fieldsAssigned }
// This rule might be violated in the case of object lazy initialized
// when the property getter is accessed the first time.
// But in general, the callers of a property
// doesn't expect to change any state through the call.
View Code Query or Rule BodyView Code Query or Rule Body
86 methods matched
methods | # lines of code (LOC) | fieldsAssigned | Full Name |
---|---|---|---|
get_SimpleModelEntityConnectionString() | 1 | 1 field | System.Data.Entity.FunctionalTestBase .get_SimpleModelEntityConnectionString() |
get_EmployeeAddresses() | 5 | 1 field | FunctionalTests.Model.Address .get_EmployeeAddresses() |
get_CustomerAddresses() | 5 | 1 field | FunctionalTests.Model.Address .get_CustomerAddresses() |
get_SalesOrderHeaders() | 5 | 1 field | FunctionalTests.Model.Address .get_SalesOrderHeaders() |
get_SalesOrderHeaders1() | 5 | 1 field | FunctionalTests.Model.Address .get_SalesOrderHeaders1() |
get_VendorAddresses() | 5 | 1 field | FunctionalTests.Model.Address .get_VendorAddresses() |
get_CustomerAddresses() | 5 | 1 field | FunctionalTests.Model.AddressType .get_CustomerAddresses() |
get_VendorAddresses() | 5 | 1 field | FunctionalTests.Model.AddressType .get_VendorAddresses() |
get_BillOfMaterials() | 5 | 1 field | FunctionalTests.Model.Product .get_BillOfMaterials() |
get_BillOfMaterials1() | 5 | 1 field | FunctionalTests.Model.Product .get_BillOfMaterials1() |
get_ProductCostHistories() | 5 | 1 field | FunctionalTests.Model.Product .get_ProductCostHistories() |
get_ProductDocuments() | 5 | 1 field | FunctionalTests.Model.Product .get_ProductDocuments() |
get_ProductInventories() | 5 | 1 field | FunctionalTests.Model.Product .get_ProductInventories() |
get_ProductListPriceHistories() | 5 | 1 field | FunctionalTests.Model.Product .get_ProductListPriceHistories() |
get_ProductProductPhotoes() | 5 | 1 field | FunctionalTests.Model.Product .get_ProductProductPhotoes() |
get_ProductReviews() | 5 | 1 field | FunctionalTests.Model.Product .get_ProductReviews() |
get_ProductVendors() | 5 | 1 field | FunctionalTests.Model.Product .get_ProductVendors() |
get_PurchaseOrderDetails() | 5 | 1 field | FunctionalTests.Model.Product .get_PurchaseOrderDetails() |
get_ShoppingCartItems() | 5 | 1 field | FunctionalTests.Model.Product .get_ShoppingCartItems() |
get_SpecialOfferProducts() | 5 | 1 field | FunctionalTests.Model.Product .get_SpecialOfferProducts() |
get_TransactionHistories() | 5 | 1 field | FunctionalTests.Model.Product .get_TransactionHistories() |
get_WorkOrders() | 5 | 1 field | FunctionalTests.Model.Product .get_WorkOrders() |
get_Employees() | 5 | 1 field | FunctionalTests.Model.Contact .get_Employees() |
get_ContactCreditCards() | 5 | 1 field | FunctionalTests.Model.Contact .get_ContactCreditCards() |
get_Individuals() | 5 | 1 field | FunctionalTests.Model.Contact .get_Individuals() |
get_SalesOrderHeaders() | 5 | 1 field | FunctionalTests.Model.Contact .get_SalesOrderHeaders() |
get_StoreContacts() | 5 | 1 field | FunctionalTests.Model.Contact .get_StoreContacts() |
get_VendorContacts() | 5 | 1 field | FunctionalTests.Model.Contact .get_VendorContacts() |
get_StoreContacts() | 5 | 1 field | FunctionalTests.Model.ContactType .get_StoreContacts() |
get_VendorContacts() | 5 | 1 field | FunctionalTests.Model.ContactType .get_VendorContacts() |
get_CountryRegionCurrencies() | 5 | 1 field | FunctionalTests.Model.CountryRegion .get_CountryRegionCurrencies() |
get_StateProvinces() | 5 | 1 field | FunctionalTests.Model.CountryRegion .get_StateProvinces() |
get_ContactCreditCards() | 5 | 1 field | FunctionalTests.Model.CreditCard .get_ContactCreditCards() |
get_SalesOrderHeaders() | 5 | 1 field | FunctionalTests.Model.CreditCard .get_SalesOrderHeaders() |
get_ProductModelProductDescriptionCultur es() | 5 | 1 field | FunctionalTests.Model.Culture .get_ProductModelProductDescriptionCultu res() |
get_CountryRegionCurrencies() | 5 | 1 field | FunctionalTests.Model.Currency .get_CountryRegionCurrencies() |
get_CurrencyRates() | 5 | 1 field | FunctionalTests.Model.Currency .get_CurrencyRates() |
get_CurrencyRates1() | 5 | 1 field | FunctionalTests.Model.Currency .get_CurrencyRates1() |
get_SalesOrderHeaders() | 5 | 1 field | FunctionalTests.Model.CurrencyRate .get_SalesOrderHeaders() |
get_CustomerAddresses() | 5 | 1 field | FunctionalTests.Model.Customer .get_CustomerAddresses() |
get_SalesOrderHeaders() | 5 | 1 field | FunctionalTests.Model.Customer .get_SalesOrderHeaders() |
get_EmployeeDepartmentHistories() | 5 | 1 field | FunctionalTests.Model.Department .get_EmployeeDepartmentHistories() |
get_ProductDocuments() | 5 | 1 field | FunctionalTests.Model.Document .get_ProductDocuments() |
get_Employees() | 5 | 1 field | FunctionalTests.Model.Employee .get_Employees() |
get_EmployeeAddresses() | 5 | 1 field | FunctionalTests.Model.Employee .get_EmployeeAddresses() |
get_EmployeeDepartmentHistories() | 5 | 1 field | FunctionalTests.Model.Employee .get_EmployeeDepartmentHistories() |
get_EmployeePayHistories() | 5 | 1 field | FunctionalTests.Model.Employee .get_EmployeePayHistories() |
get_JobCandidates() | 5 | 1 field | FunctionalTests.Model.Employee .get_JobCandidates() |
get_PurchaseOrderHeaders() | 5 | 1 field | FunctionalTests.Model.Employee .get_PurchaseOrderHeaders() |
get_ProductModelIllustrations() | 5 | 1 field | FunctionalTests.Model.Illustration .get_ProductModelIllustrations() |
get_ProductInventories() | 5 | 1 field | FunctionalTests.Model.Location .get_ProductInventories() |
get_WorkOrderRoutings() | 5 | 1 field | FunctionalTests.Model.Location .get_WorkOrderRoutings() |
get_ProductSubcategories() | 5 | 1 field | FunctionalTests.Model.ProductCategory .get_ProductSubcategories() |
get_Products() | 5 | 1 field | FunctionalTests.Model.ProductModel .get_Products() |
get_ProductModelIllustrations() | 5 | 1 field | FunctionalTests.Model.ProductModel .get_ProductModelIllustrations() |
get_ProductModelProductDescriptionCultur es() | 5 | 1 field | FunctionalTests.Model.ProductModel .get_ProductModelProductDescriptionCultu res() |
get_ProductProductPhotoes() | 5 | 1 field | FunctionalTests.Model.ProductPhoto .get_ProductProductPhotoes() |
get_Products() | 5 | 1 field | FunctionalTests.Model.ProductSubcategory .get_Products() |
get_PurchaseOrderDetails() | 5 | 1 field | FunctionalTests.Model .PurchaseOrderHeader .get_PurchaseOrderDetails() |
get_SalesOrderDetails() | 5 | 1 field | FunctionalTests.Model.SalesOrderHeader .get_SalesOrderDetails() |
get_SalesOrderHeaders() | 5 | 1 field | FunctionalTests.Model.SalesPerson .get_SalesOrderHeaders() |
get_SalesPersonQuotaHistories() | 5 | 1 field | FunctionalTests.Model.SalesPerson .get_SalesPersonQuotaHistories() |
get_SalesTerritoryHistories() | 5 | 1 field | FunctionalTests.Model.SalesPerson .get_SalesTerritoryHistories() |
get_Stores() | 5 | 1 field | FunctionalTests.Model.SalesPerson .get_Stores() |
get_StateProvinces() | 5 | 1 field | FunctionalTests.Model.SalesTerritory .get_StateProvinces() |
get_Customers() | 5 | 1 field | FunctionalTests.Model.SalesTerritory .get_Customers() |
get_SalesOrderHeaders() | 5 | 1 field | FunctionalTests.Model.SalesTerritory .get_SalesOrderHeaders() |
get_SalesPersons() | 5 | 1 field | FunctionalTests.Model.SalesTerritory .get_SalesPersons() |
get_SalesTerritoryHistories() | 5 | 1 field | FunctionalTests.Model.SalesTerritory .get_SalesTerritoryHistories() |
get_WorkOrders() | 5 | 1 field | FunctionalTests.Model.ScrapReason .get_WorkOrders() |
get_EmployeeDepartmentHistories() | 5 | 1 field | FunctionalTests.Model.Shift .get_EmployeeDepartmentHistories() |
get_PurchaseOrderHeaders() | 5 | 1 field | FunctionalTests.Model.ShipMethod .get_PurchaseOrderHeaders() |
get_SalesOrderHeaders() | 5 | 1 field | FunctionalTests.Model.ShipMethod .get_SalesOrderHeaders() |
get_SpecialOfferProducts() | 5 | 1 field | FunctionalTests.Model.SpecialOffer .get_SpecialOfferProducts() |
get_SalesOrderDetails() | 5 | 1 field | FunctionalTests.Model .SpecialOfferProduct .get_SalesOrderDetails() |
get_Addresses() | 5 | 1 field | FunctionalTests.Model.StateProvince .get_Addresses() |
get_SalesTaxRates() | 5 | 1 field | FunctionalTests.Model.StateProvince .get_SalesTaxRates() |
get_StoreContacts() | 5 | 1 field | FunctionalTests.Model.Store .get_StoreContacts() |
get_ProductVendors() | 5 | 1 field | FunctionalTests.Model.Vendor .get_ProductVendors() |
get_PurchaseOrderHeaders() | 5 | 1 field | FunctionalTests.Model.Vendor .get_PurchaseOrderHeaders() |
get_VendorAddresses() | 5 | 1 field | FunctionalTests.Model.Vendor .get_VendorAddresses() |
get_VendorContacts() | 5 | 1 field | FunctionalTests.Model.Vendor .get_VendorContacts() |
get_WorkOrderRoutings() | 5 | 1 field | FunctionalTests.Model.WorkOrder .get_WorkOrderRoutings() |
get_CompressedEmptyModel() | 6 | 1 field | ProductivityApiTests .DatabaseInitializationTests .get_CompressedEmptyModel() |
get_ResourceManager() | 4 | 1 field | System.Data.Entity.Properties .UnitTestResources.get_ResourceManager() |
get_EmptyModel() | 1 | 1 field | ProductivityApiUnitTests.DbContextTests .get_EmptyModel() |
Statistics
Stat | # lines of code (LOC) | fieldsAssigned |
---|---|---|
Sum: | 422 | 0 |
Average: | 4.91 | 0 |
Minimum: | 1 | 0 |
Maximum: | 6 | 0 |
Standard deviation: | 0.62 | 0 |
Variance: | 0.39 | 0 |
![]() | Rule warning: Avoid static fields with a mutable field type |
warnif count > 0
from f in Application.Fields
where f.IsStatic && !f.IsEnumValue && !f.IsGeneratedByCompiler && !f.IsLiteral
let fieldType = f.FieldType
where fieldType != null &&
!fieldType.IsThirdParty &&
!fieldType.IsInterface &&
!fieldType.IsImmutable
select new { f,
mutableFieldType = fieldType ,
isFieldImmutable = f.IsImmutable,
isFieldIsReadOnly = f.IsInitOnly }
// As explained in this blog post
// http://codebetter.com/patricksmacchia/2011/05/04/back-to-basics-usage-of-static-members
// static fields should be used to hold only constant and immutable states.
View Code Query or Rule BodyView Code Query or Rule Body
16 fields matched
fields | mutableFieldType | isFieldImmutable | isFieldIsReadOnly | Full Name |
---|---|---|---|---|
Instance | GenericProviderFactory<T> | False | False | System.Data.Entity .GenericProviderFactory<T>.Instance |
Instance | GenericProviderServices | False | False | System.Data.Entity .GenericProviderServices.Instance |
_default | PartialTrustSandbox | True | True | System.Data.Entity.PartialTrustSandbox ._default |
Instance | WrappingAdoNetProvider<TBase> | True | True | System.Data.Entity.WrappingProvider .WrappingAdoNetProvider<TBase>.Instance |
Instance | WrappingEfProvider<TAdoNetBase,TEfBase> | True | True | System.Data.Entity.WrappingProvider .WrappingEfProvider<TAdoNetBase,TEfBase> .Instance |
_context1Static | SimpleModelContext | True | False | ProductivityApiTests .LinqTests+ClassWithContextFieldAndOther Fields._context1Static |
_context2Static | SimpleModelContext | False | False | ProductivityApiTests .LinqTests+ClassWithContextFieldAndOther Fields._context2Static |
_context3Static | SimpleModelContext | False | False | ProductivityApiTests .LinqTests+ClassWithContextFieldAndOther Fields._context3Static |
Instance | DefaultDbProviderFactoryServiceTests+FakeProviderFactory2 | True | True | System.Data.Entity.Infrastructure .DefaultDbProviderFactoryServiceTests+Fa keProviderFactory2.Instance |
Instance | ProviderServicesFactoryTests+FakeProviderWithNullInstance | True | True | System.Data.Entity.Infrastructure .DependencyResolution .ProviderServicesFactoryTests+FakeProvid erWithNullInstance.Instance |
Instance | ProviderServicesFactoryTests+FakeProviderWithPublicField | True | True | System.Data.Entity.Infrastructure .DependencyResolution .ProviderServicesFactoryTests+FakeProvid erWithPublicField.Instance |
Singleton | ProviderServicesFactoryTests+FakeProviderWithPublicProperty | True | True | System.Data.Entity.Infrastructure .DependencyResolution .ProviderServicesFactoryTests+FakeProvid erWithPublicProperty.Singleton |
Instance | ProviderServicesFactoryTests+FakeProviderWithNonPublicField | True | True | System.Data.Entity.Infrastructure .DependencyResolution .ProviderServicesFactoryTests+FakeProvid erWithNonPublicField.Instance |
Singleton | ProviderServicesFactoryTests+FakeProviderWithNonPublicProperty | True | True | System.Data.Entity.Infrastructure .DependencyResolution .ProviderServicesFactoryTests+FakeProvid erWithNonPublicProperty.Singleton |
Instance | FakeSqlProviderFactory | True | True | System.Data.Entity.ModelConfiguration .Internal.UnitTests .FakeSqlProviderFactory.Instance |
Instance | FakeSqlProviderServices | True | True | System.Data.Entity.ModelConfiguration .Internal.UnitTests .FakeSqlProviderServices.Instance |
Statistics
Stat | mutableFieldType | isFieldImmutable | isFieldIsReadOnly |
---|---|---|---|
Sum: | 0 | 0 | 0 |
Average: | 0 | 0 | 0 |
Minimum: | 0 | 0 | 0 |
Maximum: | 0 | 0 | 0 |
Standard deviation: | 0 | 0 | 0 |
Variance: | 0 | 0 | 0 |
![]() | Rule warning: A field must not be assigned from outside its parent hierarchy types |
warnif count > 0
from f in JustMyCode.Fields.Where(f =>
!f.IsPrivate && !f.IsGeneratedByCompiler &&
!f.IsImmutable && !f.IsEnumValue)
let methodsAssignerOutsideOfMyType = f.MethodsAssigningMe.Where(
m =>!m.IsGeneratedByCompiler &&
m.ParentType != f.ParentType &&
!m.ParentType.DeriveFrom(f.ParentType) )
where methodsAssignerOutsideOfMyType.Count() > 0
select new { f, methodsAssignerOutsideOfMyType }View Code Query or Rule BodyView Code Query or Rule Body
13 fields matched
fields | methodsAssignerOutsideOfMyType | Full Name |
---|---|---|
ShouldRollBack | 3 methods | System.Data.Entity.Interception .CommitFailureTests+FailingTransactionIn terceptor.ShouldRollBack |
ValidateEntityFunc | 3 methods | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .SelfPopulatingContext .ValidateEntityFunc |
ShouldValidateEntityFunc | 2 methods | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .SelfPopulatingContext .ShouldValidateEntityFunc |
ValidateWithoutContextFunc | 1 method | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .EntityWithPropertyLevelCustomValidation Attributes.ValidateWithoutContextFunc |
ValidateWithContextFunc | 1 method | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .EntityWithPropertyLevelCustomValidation Attributes.ValidateWithContextFunc |
ValidateWithoutContextFunc | 1 method | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .EntityWithEntityLevelCustomValidationAt tributes.ValidateWithoutContextFunc |
ValidateWithContextFunc | 1 method | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .EntityWithEntityLevelCustomValidationAt tributes.ValidateWithContextFunc |
ValidateWithoutContextFunc | 3 methods | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .ComplexTypeWithTypeLevelCustomValidatio nAttributes.ValidateWithoutContextFunc |
ValidateWithContextFunc | 3 methods | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .ComplexTypeWithTypeLevelCustomValidatio nAttributes.ValidateWithContextFunc |
ValidateWithoutContextFunc | 1 method | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .EntityWithComplexTypeLevelCustomValidat ionAttributes.ValidateWithoutContextFunc |
ValidateFunc | 1 method | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .EntityWithAllKindsOfValidation .ValidateFunc |
CustomValidateFunc | 1 method | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .EntityWithAllKindsOfValidation .CustomValidateFunc |
EntityCommandDefinition | 3 methods | System.Data.Entity.ModelConfiguration .Internal.UnitTests .FakeSqlProviderServices .EntityCommandDefinition |
Statistics
Stat | methodsAssignerOutsideOfMyType |
---|---|
Sum: | 0 |
Average: | 0 |
Minimum: | 0 |
Maximum: | 0 |
Standard deviation: | 0 |
Variance: | 0 |
![]() | Critical Rule warning: Don't assign a field from many methods |
warnif count > 0
from f in JustMyCode.Fields where
!f.IsEnumValue &&
!f.IsImmutable &&
!f.IsInitOnly &&
!f.IsGeneratedByCompiler &&
!f.IsEventDelegateObject &&
(f.IsPrivate || f.IsProtected) // Don't match fields assigned outside their classes.
// The threshold 4 is arbitrary and it should avoid matching too many fields.
// Threshold is even lower for static fields because this reveals situations even more complex.
where f.MethodsAssigningMe.Count() >= (!f.IsStatic ? 4 : 2)
select new { f,
f.MethodsAssigningMe,
f.MethodsReadingMeButNotAssigningMe,
f.MethodsUsingMe,
f.ParentType }
// A field assigned from many methods is a symptom of bug-prone code.
// This situation makes harder to anticipate the field state during runtime.
// The code is then hard to read, hard to debug and hard to maintain.
// Hard-to-solve bugs due to corrupted state are often the consequence of fields anarchically assigned.
//
// The situation is even more complex if the field is static.
// Indeed, this potentially involves global random accesses from different parts of the application.
// This is why this rule provides a lower threshold for static fields.
//
// If the object containing such field is meant to be used from multiple threads,
// there are alarming chances that the code is unmaintainable and bugged.
// When multiple threads are involved, the rule of thumb is to use immutable objects.
//
// If the field type is a reference type (interfaces, classes, strings, delegates)
// corrupted state might result in a NullReferenceException.
// If the field type is a value type (number, boolean, structure)
// corrupted state might result in wrong result not even signaled by an exception sent.
//
// There is no straight advice to refactor the number of methods responsible for assigning a field.
// Solutions often involve rethinking and then rewriting a complex algorithm.
// Such field can sometime become just a variable accessed locally by a method or a closure.
// Sometime, just rethinking the life-time and the role of the parent object allows the field to become immutable
// (i.e assigned only by the constructor).
View Code Query or Rule BodyView Code Query or Rule Body
1 fields matched
field | MethodsAssigningMe | MethodsReadingMeButNotAssigningMe | MethodsUsingMe | ParentType | Full Name |
---|---|---|---|---|---|
_settingFK | 9 methods | 4 methods | 13 methods | SalesOrderHeader | FunctionalTests.Model.SalesOrderHeader ._settingFK |
Statistics
Stat | MethodsAssigningMe | MethodsReadingMeButNotAssigningMe | MethodsUsingMe | ParentType |
---|---|---|---|---|
Sum: | 0 | 0 | 0 | 0 |
Average: | 0 | 0 | 0 | 0 |
Minimum: | 0 | 0 | 0 | 0 |
Maximum: | 0 | 0 | 0 | 0 |
Standard deviation: | 0 | 0 | 0 | 0 |
Variance: | 0 | 0 | 0 | 0 |
![]() | Rule warning: Do not declare read only mutable reference types |
warnif count > 0 from f in JustMyCode.Fields where
f.IsInitOnly &&
!f.ParentType.IsPrivate &&
!f.IsPrivate &&
f.FieldType != null &&
f.FieldType.IsClass &&
!f.FieldType.IsThirdParty &&
!f.FieldType.IsImmutable
select new { f, f.FieldType, FieldVisibility = f.Visibility }
// This rule is violated when a public or internal
// type contains a public or internal read-only field
// that is a mutable reference type.
//
// This situation provides the wrong impression that the
// value can't change, when actually it's only the field
// value that can't change, rather than the object.
//
// To fix a violation of this rule, remove the read-only
// modifier or, if a breaking change is acceptable,
// replace the field with an immutable type.
//
// An object is immutable if its state doesn’t
// change once the object has been created.
// Consequently, a class or a structure is
// immutable if its instances are immutable.
// Immutable types naturally simplify code by
// limiting side-effects.
View Code Query or Rule BodyView Code Query or Rule Body
6 fields matched
fields | FieldType | FieldVisibility | Full Name |
---|---|---|---|
Instance | WrappingAdoNetProvider<TBase> | Public | System.Data.Entity.WrappingProvider .WrappingAdoNetProvider<TBase>.Instance |
Instance | WrappingEfProvider<TAdoNetBase,TEfBase> | Public | System.Data.Entity.WrappingProvider .WrappingEfProvider<TAdoNetBase,TEfBase> .Instance |
Instance | DefaultDbProviderFactoryServiceTests+FakeProviderFactory2 | Public | System.Data.Entity.Infrastructure .DefaultDbProviderFactoryServiceTests+Fa keProviderFactory2.Instance |
Instance | ProviderServicesFactoryTests+FakeProviderWithPublicField | Public | System.Data.Entity.Infrastructure .DependencyResolution .ProviderServicesFactoryTests+FakeProvid erWithPublicField.Instance |
Instance | FakeSqlProviderFactory | Public | System.Data.Entity.ModelConfiguration .Internal.UnitTests .FakeSqlProviderFactory.Instance |
Instance | FakeSqlProviderServices | Public | System.Data.Entity.ModelConfiguration .Internal.UnitTests .FakeSqlProviderServices.Instance |
Statistics
Stat | FieldType | FieldVisibility |
---|---|---|
Sum: | 0 | 0 |
Average: | 0 | 0 |
Minimum: | 0 | 0 |
Maximum: | 0 | 0 |
Standard deviation: | 0 | 0 |
Variance: | 0 | 0 |
692
Naming Conventions |
|
![]() | Rule warning: Instance fields should be prefixed with a 'm_' |
warnif count > 0 from f in Application.Fields where
!f.NameLike (@"^m_") &&
!f.IsStatic &&
!f.IsLiteral &&
!f.IsGeneratedByCompiler &&
!f.IsSpecialName &&
!f.IsEventDelegateObject
select new { f, f.SizeOfInst }
// This naming convention provokes debate.
// Don't hesitate to customize the regex of
// NameLike to your preference.View Code Query or Rule BodyView Code Query or Rule Body
820 fields matched
fields | Size of instance | Full Name |
---|---|---|
_csdlArtifacts | 4 | System.Data.Entity .CsdlToClrAssemblyConverter ._csdlArtifacts |
_isPOCO | 1 | System.Data.Entity .CsdlToClrAssemblyConverter._isPOCO |
_assembly | 4 | System.Data.Entity .CsdlToClrAssemblyConverter._assembly |
_typeBuilders | 4 | System.Data.Entity.DynamicAssembly ._typeBuilders |
_dynamicTypes | 4 | System.Data.Entity.DynamicAssembly ._dynamicTypes |
_types | 4 | System.Data.Entity.DynamicAssembly ._types |
_attributes | 4 | System.Data.Entity.DynamicAssembly ._attributes |
_getterAccess | 4 | System.Data.Entity.DynamicProperty ._getterAccess |
_setterAccess | 4 | System.Data.Entity.DynamicProperty ._setterAccess |
_isVirtual | 1 | System.Data.Entity.DynamicProperty ._isVirtual |
_attributes | 4 | System.Data.Entity.DynamicProperty ._attributes |
_attributes | 4 | System.Data.Entity.DynamicType ._attributes |
_typeAccess | 4 | System.Data.Entity.DynamicType ._typeAccess |
_properties | 4 | System.Data.Entity.DynamicStructuralType ._properties |
_fields | 4 | System.Data.Entity.DynamicStructuralType ._fields |
_ctorAccess | 4 | System.Data.Entity.DynamicStructuralType ._ctorAccess |
_members | 4 | System.Data.Entity.DynamicEnumType ._members |
_assembly | 4 | System.Data.Entity .AssemblyResourceLookup._assembly |
_resourceManager | 4 | System.Data.Entity .AssemblyResourceLookup._resourceManager |
countOpenClose | 4 | System.Data.Entity .ConnectionEventsTracker.countOpenClose |
countCloseOpen | 4 | System.Data.Entity .ConnectionEventsTracker.countCloseOpen |
countOtherConnectionStates | 4 | System.Data.Entity .ConnectionEventsTracker .countOtherConnectionStates |
_data | 4 | System.Data.Entity.HashSetBasedDbSet<T> ._data |
_query | 4 | System.Data.Entity.HashSetBasedDbSet<T> ._query |
_findFunc | 4 | System.Data.Entity.HashSetBasedDbSet<T> ._findFunc |
_bindingList | 4 | System.Data.Entity.ObservableListSource <T>._bindingList |
_parameterBindings | 4 | System.Data.Entity .ModelAssertions+CompositeParameterAsser tions._parameterBindings |
_column | 4 | System.Data.Entity .ModelAssertions+ColumnAssertions ._column |
_property | 4 | System.Data.Entity .ModelAssertions+PropertyAssertions ._property |
_columns | 4 | System.Data.Entity .ModelAssertions+PropertyAssertions ._columns |
_table | 4 | System.Data.Entity .ModelAssertions+TypeAssertions._table |
_entitySet | 4 | System.Data.Entity .ModelAssertions+TypeAssertions ._entitySet |
_database | 4 | System.Data.Entity .ModelAssertions+TypeAssertions ._database |
_fragment | 4 | System.Data.Entity .ModelAssertions+MappingFragmentAssertio ns._fragment |
_lookup | 4 | System.Data.Entity .StringResourceVerifier._lookup |
_context | 4 | System.Data.Entity.TypeAssertion <TStructuralType>._context |
_unignoredTypes | 4 | System.Data.Entity .AdventureWorksModelBuilder ._unignoredTypes |
_configuration | 4 | System.Data.Entity .DynamicTypeDescriptionProvider<T> ._configuration |
_configuration | 4 | System.Data.Entity.DynamicTypeDescriptor <T>._configuration |
_dynamicTypeDescriptionProvider | 4 | System.Data.Entity .DynamicTypeDescriptionConfiguration<T> ._dynamicTypeDescriptionProvider |
_propertyAttributes | 4 | System.Data.Entity .DynamicTypeDescriptionConfiguration<T> ._propertyAttributes |
_outputDirectory | 4 | System.Data.Entity.Design .BasicDesignTimeScenarios ._outputDirectory |
_pathToAssembly | 4 | System.Data.Entity.Design .BasicDesignTimeScenarios ._pathToAssembly |
_domain | 4 | System.Data.Entity.Design .BasicDesignTimeScenarios._domain |
_result | 4 | System.Data.Entity.Design .BasicDesignTimeScenarios+ResultHandler ._result |
_collationName | 4 | System.Data.Entity.TestHelpers .CollationAttribute._collationName |
_originalProviderFactoryResolver | 4 | System.Data.Entity.TestHelpers .FakeProviderFactoryResolver ._originalProviderFactoryResolver |
_tableCollation | 4 | System.Data.Entity.TestHelpers .SqlServerMigrationSqlGeneratorWtihColla tions._tableCollation |
_tag | 4 | System.Data.Entity.TestHelpers .TestLoadedInterceptor._tag |
azureExecutionStrategy | 4 | System.Data.Entity.TestHelpers .TestSqlAzureExecutionStrategy .azureExecutionStrategy |
_supportsSchema | 1 | System.Data.Entity.Migrations .InfoContext._supportsSchema |
_basicTypeConfiguration | 4 | FunctionalTests .ConfigurationScenarioTests+BasicTypeCon text._basicTypeConfiguration |
_connection | 4 | FunctionalTests.EndToEndFunctionsTest ._connection |
_stateProvinceID | 4 | FunctionalTests.Model.Address ._stateProvinceID |
_employeeAddresses | 4 | FunctionalTests.Model.Address ._employeeAddresses |
_stateProvince | 4 | FunctionalTests.Model.Address ._stateProvince |
_customerAddresses | 4 | FunctionalTests.Model.Address ._customerAddresses |
_salesOrderHeaders | 4 | FunctionalTests.Model.Address ._salesOrderHeaders |
_salesOrderHeaders1 | 4 | FunctionalTests.Model.Address ._salesOrderHeaders1 |
_vendorAddresses | 4 | FunctionalTests.Model.Address ._vendorAddresses |
_customerAddresses | 4 | FunctionalTests.Model.AddressType ._customerAddresses |
_vendorAddresses | 4 | FunctionalTests.Model.AddressType ._vendorAddresses |
_productAssemblyID | 5 | FunctionalTests.Model.BillOfMaterials ._productAssemblyID |
_componentID | 4 | FunctionalTests.Model.BillOfMaterials ._componentID |
_unitMeasureCode | 4 | FunctionalTests.Model.BillOfMaterials ._unitMeasureCode |
_product | 4 | FunctionalTests.Model.BillOfMaterials ._product |
_product1 | 4 | FunctionalTests.Model.BillOfMaterials ._product1 |
_settingFK | 1 | FunctionalTests.Model.BillOfMaterials ._settingFK |
_productSubcategoryID | 5 | FunctionalTests.Model.Product ._productSubcategoryID |
_productModelID | 5 | FunctionalTests.Model.Product ._productModelID |
_billOfMaterials | 4 | FunctionalTests.Model.Product ._billOfMaterials |
_billOfMaterials1 | 4 | FunctionalTests.Model.Product ._billOfMaterials1 |
_productModel | 4 | FunctionalTests.Model.Product ._productModel |
_productSubcategory | 4 | FunctionalTests.Model.Product ._productSubcategory |
_productCostHistories | 4 | FunctionalTests.Model.Product ._productCostHistories |
_productDocuments | 4 | FunctionalTests.Model.Product ._productDocuments |
_productInventories | 4 | FunctionalTests.Model.Product ._productInventories |
_productListPriceHistories | 4 | FunctionalTests.Model.Product ._productListPriceHistories |
_productProductPhotoes | 4 | FunctionalTests.Model.Product ._productProductPhotoes |
_productReviews | 4 | FunctionalTests.Model.Product ._productReviews |
_productVendors | 4 | FunctionalTests.Model.Product ._productVendors |
_purchaseOrderDetails | 4 | FunctionalTests.Model.Product ._purchaseOrderDetails |
_shoppingCartItems | 4 | FunctionalTests.Model.Product ._shoppingCartItems |
_specialOfferProducts | 4 | FunctionalTests.Model.Product ._specialOfferProducts |
_transactionHistories | 4 | FunctionalTests.Model.Product ._transactionHistories |
_workOrders | 4 | FunctionalTests.Model.Product ._workOrders |
_settingFK | 1 | FunctionalTests.Model.Product._settingFK |
_employees | 4 | FunctionalTests.Model.Contact._employees |
_contactCreditCards | 4 | FunctionalTests.Model.Contact ._contactCreditCards |
_individuals | 4 | FunctionalTests.Model.Contact ._individuals |
_salesOrderHeaders | 4 | FunctionalTests.Model.Contact ._salesOrderHeaders |
_storeContacts | 4 | FunctionalTests.Model.Contact ._storeContacts |
_vendorContacts | 4 | FunctionalTests.Model.Contact ._vendorContacts |
_contactID | 4 | FunctionalTests.Model.ContactCreditCard ._contactID |
_creditCardID | 4 | FunctionalTests.Model.ContactCreditCard ._creditCardID |
_contact | 4 | FunctionalTests.Model.ContactCreditCard ._contact |
_creditCard | 4 | FunctionalTests.Model.ContactCreditCard ._creditCard |
_storeContacts | 4 | FunctionalTests.Model.ContactType ._storeContacts |
_vendorContacts | 4 | FunctionalTests.Model.ContactType ._vendorContacts |
_countryRegionCurrencies | 4 | FunctionalTests.Model.CountryRegion ._countryRegionCurrencies |
Statistics
Stat | Size of instance |
---|---|
Sum: | 3 391 |
Average: | 4.14 |
Minimum: | 1 |
Maximum: | 16 |
Standard deviation: | 1.4 |
Variance: | 1.95 |
![]() | Rule warning: Static fields should be prefixed with a 's_' |
warnif count > 0 from f in Application.Fields where
!f.NameLike (@"^s_") &&
f.IsStatic &&
!f.IsLiteral &&
!f.IsGeneratedByCompiler &&
!f.IsSpecialName &&
!f.IsEventDelegateObject
select new { f, f.SizeOfInst }
// This naming convention provokes debate.
// Don't hesitate to customize the regex of
// NameLike to your preference.
View Code Query or Rule BodyView Code Query or Rule Body
144 fields matched
fields | Size of instance | Full Name |
---|---|---|
_metadataForSimpleModelCreated | N/A | System.Data.Entity.FunctionalTestBase ._metadataForSimpleModelCreated |
_simpleModelEntityConnectionString | N/A | System.Data.Entity.FunctionalTestBase ._simpleModelEntityConnectionString |
_csdlNs | N/A | System.Data.Entity .CsdlToClrAssemblyConverter._csdlNs |
_csdlMappingTestExtNs | N/A | System.Data.Entity .CsdlToClrAssemblyConverter ._csdlMappingTestExtNs |
_primitiveTypes | N/A | System.Data.Entity .CsdlToClrAssemblyConverter ._primitiveTypes |
_createdAssemblies | N/A | System.Data.Entity .CsdlToClrAssemblyConverter ._createdAssemblies |
_assemblyCount | N/A | System.Data.Entity.DynamicAssembly ._assemblyCount |
Instance | N/A | System.Data.Entity .GenericProviderFactory<T>.Instance |
Instance | N/A | System.Data.Entity .GenericProviderServices.Instance |
_resolvers | N/A | System.Data.Entity.MutableResolver ._resolvers |
_instance | N/A | System.Data.Entity.MutableResolver ._instance |
_executionStrategyFactoriesField | N/A | System.Data.Entity.MutableResolver ._executionStrategyFactoriesField |
_baseConnectionString | N/A | System.Data.Entity.ModelHelpers ._baseConnectionString |
_factoryProperty | N/A | System.Data.Entity.TestHelpers .FakeProviderFactoryResolver ._factoryProperty |
_originalConnectionFactories | N/A | System.Data.Entity.TestHelpers .FunctionalTestsConfiguration ._originalConnectionFactories |
HooksRun | N/A | System.Data.Entity.TestHelpers .TestLoadedInterceptor.HooksRun |
_columnConvention | N/A | FunctionalTests .AttributeToAnnotationScenarios ._columnConvention |
_tableConvention | N/A | FunctionalTests .AttributeToAnnotationScenarios ._tableConvention |
PersonFirstNameExpr | N/A | FunctionalTests .DataAnnotationScenarioTests+PrivateMemb erAnnotationClass.PersonFirstNameExpr |
PersonFirstNameObjectExpr | N/A | FunctionalTests .DataAnnotationScenarioTests+PrivateMemb erAnnotationClass .PersonFirstNameObjectExpr |
_baseConnectionString | N/A | System.Data.Entity.Configuration .MySqlConnectionFactory ._baseConnectionString |
_providerInvariantName | N/A | System.Data.Entity.Configuration .ProviderAgnosticConfiguration ._providerInvariantName |
_baseConnectionString | N/A | System.Data.Entity.Configuration .ProviderAgnosticConfiguration ._baseConnectionString |
_primitiveTypesMap | N/A | System.Data.Entity.Functionals.Utilities .TypeExtensions._primitiveTypesMap |
_factories | N/A | System.Data.Entity.TestModels .ExtraLazyLoading .CachingCollectionInitializer._factories |
_factoryMethodInfo | N/A | System.Data.Entity.TestModels .ExtraLazyLoading .CachingCollectionInitializer ._factoryMethodInfo |
_default | N/A | System.Data.Entity.PartialTrustSandbox ._default |
connectionString | N/A | System.Data.Entity.Metadata .MetadataCachingTests.connectionString |
invalidEnumPropertyFacets | N/A | System.Data.Entity.Metadata .MetadataEnumTests .invalidEnumPropertyFacets |
SpatialEntityPropertyCSDLTemplate | N/A | System.Data.Entity.Metadata .MetadataSpatialTests .SpatialEntityPropertyCSDLTemplate |
_typeCount | N/A | System.Data.Entity.SqlServer .DatabaseExistsInInitializerTests+Exists Context._typeCount |
_initializer | N/A | System.Data.Entity.SqlServer .DatabaseExistsInInitializerTests+Exists Context<T>._initializer |
_dropCreateIfNotExists | N/A | System.Data.Entity.SqlServer .DatabaseExistsInInitializerTests+Exists Context<T>._dropCreateIfNotExists |
_dropCreateIfModelChanges | N/A | System.Data.Entity.SqlServer .DatabaseExistsInInitializerTests+Exists Context<T>._dropCreateIfModelChanges |
_dropCreateAlways | N/A | System.Data.Entity.SqlServer .DatabaseExistsInInitializerTests+Exists Context<T>._dropCreateAlways |
_typeCount | N/A | System.Data.Entity.SqlServer .DatabaseExistsTests+ExistsContext ._typeCount |
_createQueryMethod | N/A | System.Data.Entity.TestDoubles .InMemoryAsyncQueryProvider ._createQueryMethod |
_executeMethod | N/A | System.Data.Entity.TestDoubles .InMemoryAsyncQueryProvider ._executeMethod |
_isSqlAzure | N/A | System.Data.Entity.Update .GuidIdentityColumnUpdateTests ._isSqlAzure |
Instance | N/A | System.Data.Entity.WrappingProvider .WrappingAdoNetProvider<TBase>.Instance |
Instance | N/A | System.Data.Entity.WrappingProvider .WrappingEfProvider<TAdoNetBase,TEfBase> .Instance |
_providerTable | N/A | System.Data.Entity.WrappingProvider .WrappingProviderTests._providerTable |
_primitiveTypesMap | N/A | System.Data.Entity.Functionals.Utilities .TypeExtensions._primitiveTypesMap |
_operationsProperty | N/A | System.Data.Entity.Migrations .DbMigratorExtensions ._operationsProperty |
_excludedTypes | N/A | System.Data.Entity.Migrations .AutoAndGenerateTestCase<TContextV1 ,TContextV2>+SqlInterceptor ._excludedTypes |
workspace | N/A | System.Data.Entity.Query .ModelDefinedFunctionTests.workspace |
Csdl | N/A | System.Data.Entity.Query.ProductModel .Csdl |
CsdlWithFunctions | N/A | System.Data.Entity.Query.ProductModel .CsdlWithFunctions |
_workspace | N/A | System.Data.Entity.Query.FunctionTests ._workspace |
workspace | N/A | System.Data.Entity.Query .GroupAggregateTests.workspace |
csdl | N/A | System.Data.Entity.Query.QueryEnumTests .csdl |
ssdl | N/A | System.Data.Entity.Query.QueryEnumTests .ssdl |
msl | N/A | System.Data.Entity.Query.QueryEnumTests .msl |
workspace | N/A | System.Data.Entity.Query.QueryEnumTests .workspace |
StaticField | N/A | System.Data.Entity.Query.LinqToEntities .FuncletizationTests+StubClass .StaticField |
StartingConnectionString | N/A | ProductivityApiTests .DatabaseTests+MutatingConnectionContext <TContext>.StartingConnectionString |
ChangedConnectionString | N/A | ProductivityApiTests .DatabaseTests+MutatingConnectionContext <TContext>.ChangedConnectionString |
ChangedConnectionString | N/A | ProductivityApiTests .DatabaseTests+MutatingConnectionContext 5.ChangedConnectionString |
_sqlCeAssembly | N/A | ProductivityApiTests .DbConnectionFactoryTests._sqlCeAssembly |
_someIntStatic | N/A | ProductivityApiTests .LinqTests+ClassWithContextFieldAndOther Fields._someIntStatic |
_someStringStatic | N/A | ProductivityApiTests .LinqTests+ClassWithContextFieldAndOther Fields._someStringStatic |
_context1Static | N/A | ProductivityApiTests .LinqTests+ClassWithContextFieldAndOther Fields._context1Static |
_context2Static | N/A | ProductivityApiTests .LinqTests+ClassWithContextFieldAndOther Fields._context2Static |
_context3Static | N/A | ProductivityApiTests .LinqTests+ClassWithContextFieldAndOther Fields._context3Static |
_count | N/A | ProductivityApiTests .MultiThreadingTests+MultiInitContext3 ._count |
_lock | N/A | ProductivityApiTests .MultiThreadingTests+MultiInitContext3 ._lock |
_aspProxy | N/A | ProductivityApiTests.PartialTrustTests ._aspProxy |
_connectionString | N/A | ProductivityApiTests.SpatialTests ._connectionString |
_ef43DateTime | N/A | FunctionalTests.ProductivityApi .DbFunctionScenarios+DateTimeFunctions ._ef43DateTime |
_ef43Offset | N/A | FunctionalTests.ProductivityApi .DbFunctionScenarios+DateTimeFunctions ._ef43Offset |
_ef43DateTime | N/A | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+DateTimeFunctions._ef43DateTime |
_ef43Offset | N/A | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+DateTimeFunctions._ef43Offset |
_knownBuildingGuid | N/A | FunctionalTests.ProductivityApi .TemplateModels.CsAdvancedPatterns .AdvancedPatternsModelFirstInitializer ._knownBuildingGuid |
ValidateWithoutContextFunc | N/A | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .EntityWithPropertyLevelCustomValidation Attributes.ValidateWithoutContextFunc |
ValidateWithContextFunc | N/A | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .EntityWithPropertyLevelCustomValidation Attributes.ValidateWithContextFunc |
ValidateWithoutContextFunc | N/A | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .EntityWithEntityLevelCustomValidationAt tributes.ValidateWithoutContextFunc |
ValidateWithContextFunc | N/A | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .EntityWithEntityLevelCustomValidationAt tributes.ValidateWithContextFunc |
ValidateWithoutContextFunc | N/A | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .ComplexTypeWithTypeLevelCustomValidatio nAttributes.ValidateWithoutContextFunc |
ValidateWithContextFunc | N/A | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .ComplexTypeWithTypeLevelCustomValidatio nAttributes.ValidateWithContextFunc |
ValidateWithoutContextFunc | N/A | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .EntityWithComplexTypeLevelCustomValidat ionAttributes.ValidateWithoutContextFunc |
CustomValidateFunc | N/A | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .EntityWithAllKindsOfValidation .CustomValidateFunc |
KnownBuildingGuid | N/A | TemplateTests.KnownBuildingGuid |
m_ComputerObjectProvider | N/A | My.MyProject.m_ComputerObjectProvider |
m_AppObjectProvider | N/A | My.MyProject.m_AppObjectProvider |
m_UserObjectProvider | N/A | My.MyProject.m_UserObjectProvider |
m_MyWebServicesObjectProvider | N/A | My.MyProject .m_MyWebServicesObjectProvider |
_knownBuildingGuid | N/A | AdvancedPatternsVB .AdvancedPatternsModelFirstInitializer ._knownBuildingGuid |
ValueTypePropertyMetadata | N/A | System.Data.Entity.FakeWithProps .ValueTypePropertyMetadata |
RefTypePropertyMetadata | N/A | System.Data.Entity.FakeWithProps .RefTypePropertyMetadata |
ComplexPropertyMetadata | N/A | System.Data.Entity.FakeWithProps .ComplexPropertyMetadata |
ReferenceMetadata | N/A | System.Data.Entity.FakeWithProps .ReferenceMetadata |
CollectionMetadata | N/A | System.Data.Entity.FakeWithProps .CollectionMetadata |
FakeNamedFooPropertyMetadata | N/A | System.Data.Entity.FakeEntity .FakeNamedFooPropertyMetadata |
_net45EntityFrameworkVersion | N/A | System.Data.Entity .ConnectionFactoryConfig .ConnectionFactoryConfigTests ._net45EntityFrameworkVersion |
_net40EntityFrameworkVersion | N/A | System.Data.Entity .ConnectionFactoryConfig .ConnectionFactoryConfigTests ._net40EntityFrameworkVersion |
_net45EntityFrameworkSectionName | N/A | System.Data.Entity .ConnectionFactoryConfig .ConnectionFactoryConfigTests ._net45EntityFrameworkSectionName |
_net40EntityFrameworkSectionName | N/A | System.Data.Entity .ConnectionFactoryConfig .ConnectionFactoryConfigTests ._net40EntityFrameworkSectionName |
resourceMan | N/A | System.Data.Entity.Properties .UnitTestResources.resourceMan |
resourceCulture | N/A | System.Data.Entity.Properties .UnitTestResources.resourceCulture |
Field | N/A | System.Data.Entity.Utilities .MemberInfoExtensionsTests+GetValue+Fake ForGetValue.Field |
Statistics
Stat | Size of instance |
---|---|
Sum: | 0 |
Average: | 0 |
Minimum: | 0 |
Maximum: | 0 |
Standard deviation: | 0 |
Variance: | 0 |
![]() | Critical Rule warning: Interface name should begin with a 'I' |
warnif count > 0 from t in Application.Types where
t.IsInterface
// Discard outter type(s) name prefix for nested types
let name = !t.IsNested ? t.Name : t.Name.Substring(t.Name.LastIndexOf('+') + 1, t.Name.Length - t.Name.LastIndexOf('+') - 1)
where name[0] != 'I'
select t
View Code Query or Rule BodyView Code Query or Rule Body
2 types matched
types | Full Name |
---|---|
TypeExtensionsTests+IsValidStructuralTyp e+AnInterface1 | System.Data.Entity.Utilities .TypeExtensionsTests+IsValidStructuralTy pe+AnInterface1 |
PropertyFilterTests+PropertyFilterTests_ Interface | System.Data.Entity.ModelConfiguration .Mappers .PropertyFilterTests+PropertyFilterTests _Interface |
Statistics
Stat |
---|
Sum: |
Average: |
Minimum: |
Maximum: |
Standard deviation: |
Variance: |
![]() | Rule warning: Abstract base class should be suffixed with 'Base' |
warnif count > 0 from t in Application.Types where
t.IsAbstract &&
t.IsClass &&
// equivalent to: DepthOfDeriveFrom "System.Object" == 1
t.DepthOfInheritance == 1 &&
((!t.IsGeneric && !t.NameLike (@"Base$")) ||
( t.IsGeneric && !t.NameLike (@"Base<")))
select new { t, t.DepthOfInheritance }View Code Query or Rule BodyView Code Query or Rule Body
61 types matched
types | Depth of inheritance | Full Name |
---|---|---|
DynamicType | 1 | System.Data.Entity.DynamicType |
TptMappingTests+A | 1 | System.Data.Entity.CodeFirst .TptMappingTests+A |
TptMappingTests+B | 1 | System.Data.Entity.CodeFirst .TptMappingTests+B |
AdvancedMappingScenarioTests+SingleAbstr act | 1 | FunctionalTests .AdvancedMappingScenarioTests+SingleAbst ract |
AssociationScenarioTests+DependentManyTo ManySelf | 1 | FunctionalTests .AssociationScenarioTests+DependentManyT oManySelf |
AssociationScenarioTests+DependentSelfRe fInverse | 1 | FunctionalTests .AssociationScenarioTests+DependentSelfR efInverse |
BasicMappingScenarioTests+AbstractBaseEn tity | 1 | FunctionalTests .BasicMappingScenarioTests+AbstractBaseE ntity |
BasicMappingScenarioTests+AbsDep_Depende nt | 1 | FunctionalTests .BasicMappingScenarioTests+AbsDep_Depend ent |
BasicMappingScenarioTests+Repro142666_De pendent | 1 | FunctionalTests .BasicMappingScenarioTests+Repro142666_D ependent |
BasicMappingScenarioTests+Repro150248_De pendent_2 | 1 | FunctionalTests .BasicMappingScenarioTests+Repro150248_D ependent_2 |
BasicMappingScenarioTests+Repro135563_2_ BaseDependent | 1 | FunctionalTests .BasicMappingScenarioTests+Repro135563_2 _BaseDependent |
BasicMappingScenarioTests+VehicleProduct | 1 | FunctionalTests .BasicMappingScenarioTests+VehicleProduc t |
BasicMappingScenarioTests+Repro143662_Pa rty | 1 | FunctionalTests .BasicMappingScenarioTests+Repro143662_P arty |
BasicMappingScenarioTests+Repro110459_Cu stomer | 1 | FunctionalTests .BasicMappingScenarioTests+Repro110459_C ustomer |
BasicMappingScenarioTests+Repro147906_En tityA1 | 1 | FunctionalTests .BasicMappingScenarioTests+Repro147906_E ntityA1 |
BasicMappingScenarioTests+BaseNote | 1 | FunctionalTests .BasicMappingScenarioTests+BaseNote |
BasicMappingScenarioTests+BaseEmployee | 1 | FunctionalTests .BasicMappingScenarioTests+BaseEmployee |
BasicMappingScenarioTests+AbsBaseSplit | 1 | FunctionalTests .BasicMappingScenarioTests+AbsBaseSplit |
BasicMappingScenarioTests+CodePlex1646+P erson | 1 | FunctionalTests .BasicMappingScenarioTests+CodePlex1646+ Person |
BasicMappingScenarioTests+CodePlex1646_R epro2+Human | 1 | FunctionalTests .BasicMappingScenarioTests+CodePlex1646_ Repro2+Human |
BasicMappingScenarioTests+CodePlex1698+E ntity | 1 | FunctionalTests .BasicMappingScenarioTests+CodePlex1698+ Entity |
ConfigurationScenarioTests+BaseEntity_15 5894 | 1 | FunctionalTests .ConfigurationScenarioTests+BaseEntity_1 55894 |
ConventionsScenarioTests+ConventionTests +BaseEntity | 1 | FunctionalTests .ConventionsScenarioTests+ConventionTest s+BaseEntity |
DataAnnotationScenarioTests+AbstractBase Entity | 1 | FunctionalTests .DataAnnotationScenarioTests+AbstractBas eEntity |
DataAnnotationScenarioTests+AbstractReco rd | 1 | FunctionalTests .DataAnnotationScenarioTests+AbstractRec ord |
InheritanceScenarioTests+Ad | 1 | FunctionalTests .InheritanceScenarioTests+Ad |
InheritanceScenarioTests+BaseDependent_1 65027 | 1 | FunctionalTests .InheritanceScenarioTests+BaseDependent_ 165027 |
InheritanceScenarioTests+ITFoo | 1 | FunctionalTests .InheritanceScenarioTests+ITFoo |
InheritanceScenarioTests+A1 | 1 | FunctionalTests .InheritanceScenarioTests+A1 |
InheritanceScenarioTests+D1 | 1 | FunctionalTests .InheritanceScenarioTests+D1 |
InheritanceScenarioTests+CoverBusiness | 1 | FunctionalTests .InheritanceScenarioTests+CoverBusiness |
InheritanceScenarioTests+AbstractBase192 4 | 1 | FunctionalTests .InheritanceScenarioTests+AbstractBase19 24 |
InheritanceScenarioTests+Tag1964 | 1 | FunctionalTests .InheritanceScenarioTests+Tag1964 |
InheritanceScenarioTests+TheBaseClass | 1 | FunctionalTests .InheritanceScenarioTests+TheBaseClass |
InheritanceScenarioTests+MessageBase1747 | 1 | FunctionalTests .InheritanceScenarioTests+MessageBase174 7 |
A | 1 | FunctionalTests.BugDevDiv_178590.A |
D | 1 | FunctionalTests.BugDevDiv_178590.D |
A | 1 | FunctionalTests.Bug178568.A |
BaseDependent | 1 | FunctionalTests.Bug336706.BaseDependent |
AbstractType1 | 1 | FunctionalTests.Model.AbstractType1 |
CachingCollectionInitializer | 1 | System.Data.Entity.TestModels .ExtraLazyLoading .CachingCollectionInitializer |
Weapon | 1 | System.Data.Entity.TestModels .ProviderAgnosticModel.Weapon |
TestDatabase | 1 | System.Data.Entity.Migrations .TestDatabase |
JoinEliminationTests+CodePlex2196+BaseTy pe | 1 | System.Data.Entity.Query .JoinEliminationTests+CodePlex2196+BaseT ype |
Weapon | 1 | System.Data.Entity.TestModels .GearsOfWarModel.Weapon |
Creature | 1 | System.Data.Entity.TestModels .FantasyModel.Creature |
Spell | 1 | System.Data.Entity.TestModels .FantasyModel.Spell |
EmployeeMf | 1 | FunctionalTests.ProductivityApi .TemplateModels.CsAdvancedPatterns .EmployeeMf |
EmployeeMf | 1 | AdvancedPatternsVB.EmployeeMf |
FakeBaseConnectionFactory | 1 | System.Data.Entity .ConnectionFactoryConfig .FakeBaseConnectionFactory |
TypeExtensionsTests+IsAbstract+Cleese | 1 | System.Data.Entity.Utilities .TypeExtensionsTests+IsAbstract+Cleese |
FunctionImportMappingComposableTests+E | 1 | System.Data.Entity.Core.Mapping .FunctionImportMappingComposableTests+E |
DbMemberEntryVerifier<TEntry ,TInternalEntry> | 1 | System.Data.Entity.Infrastructure .DbMemberEntryVerifier<TEntry ,TInternalEntry> |
DispatchersTests+FakeInterceptor | 1 | System.Data.Entity.Infrastructure .Interception .DispatchersTests+FakeInterceptor |
DbModelBuilderTests+AType3 | 1 | System.Data.Entity.ModelConfiguration .DbModelBuilderTests+AType3 |
ModificationFunctionConfigurationTTests | 1 | System.Data.Entity.ModelConfiguration .Configuration.Functions .ModificationFunctionConfigurationTTests |
TypeMapperTests+AType7 | 1 | System.Data.Entity.ModelConfiguration .Edm.TypeMapperTests+AType7 |
InternalContextForMock | 1 | System.Data.Entity.Internal .InternalContextForMock |
FakeBaseConnectionFactory | 1 | System.Data.Entity.Internal .FakeBaseConnectionFactory |
ModificationCommandTreeGeneratorTests+We apon | 1 | System.Data.Entity.Migrations .Infrastructure .ModificationCommandTreeGeneratorTests+W eapon |
EdmModelDifferTests+Parent | 1 | System.Data.Entity.Migrations .Infrastructure .EdmModelDifferTests+Parent |
Statistics
Stat | Depth of inheritance |
---|---|
Sum: | 61 |
Average: | 1 |
Minimum: | 1 |
Maximum: | 1 |
Standard deviation: | 0 |
Variance: | 0 |
![]() | Rule warning: Types name should begin with an Upper character |
warnif count > 0 from t in JustMyCode.Types where
// The name of a type should begin with an Upper letter.
!t.SimpleNameLike (@"^[A-Z]") &&
// Except if it is generated by compiler or ...
!t.IsSpecialName &&
!t.IsGeneratedByCompiler
select new { t, t.NbLinesOfCode }View Code Query or Rule BodyView Code Query or Rule Body
3 types matched
types | # lines of code (LOC) | Full Name |
---|---|---|
_3_1_4_1_5_9_ | 2 | ____._____.__._3_1_4_1_5_9_ |
__Context_In_PartiallyInvalidNam3spac3 | 2 | __This.Is_3_Not.Compl3t3ly.Invalid .__Context_In_PartiallyInvalidNam3spac3 |
_3UnicornsContextInUnderscoreDigitNamesp ace | 2 | _3Unicorns.Starts.With.Underscrore.Digit ._3UnicornsContextInUnderscoreDigitNames pace |
Statistics
Stat | # lines of code (LOC) |
---|---|
Sum: | 6 |
Average: | 2 |
Minimum: | 2 |
Maximum: | 2 |
Standard deviation: | 0 |
Variance: | 0 |
![]() | Rule warning: Avoid types with name too long |
warnif count > 0 from t in Application.Types
where !t.IsGeneratedByCompiler
where t.SimpleName.Length > 35
select new { t, t.SimpleName }
View Code Query or Rule BodyView Code Query or Rule Body
285 types matched
types | SimpleName | Full Name |
---|---|---|
CodeFirstScaffoldingContextWithConnectio n | CodeFirstScaffoldingContextWithConnection | System.Data.Entity.TestHelpers .CodeFirstScaffoldingContextWithConnecti on |
DefaultFunctionalTestsConnectionFactory | DefaultFunctionalTestsConnectionFactory | System.Data.Entity.TestHelpers .DefaultFunctionalTestsConnectionFactory |
SqlServerMigrationSqlGeneratorWtihCollat ions | SqlServerMigrationSqlGeneratorWtihCollations | System.Data.Entity.TestHelpers .SqlServerMigrationSqlGeneratorWtihColla tions |
AssociationScenarioTests+DependentPrinci palNavRequiredDependent | DependentPrincipalNavRequiredDependent | FunctionalTests .AssociationScenarioTests+DependentPrinc ipalNavRequiredDependent |
AssociationScenarioTests+PrincipalPrinci palNavRequiredDependent | PrincipalPrincipalNavRequiredDependent | FunctionalTests .AssociationScenarioTests+PrincipalPrinc ipalNavRequiredDependent |
AssociationScenarioTests+PrincipalWithCo mpositeAnnotatedDependent | PrincipalWithCompositeAnnotatedDependent | FunctionalTests .AssociationScenarioTests+PrincipalWithC ompositeAnnotatedDependent |
AssociationScenarioTests+CompositePartia llyAnnotatedDependent | CompositePartiallyAnnotatedDependent | FunctionalTests .AssociationScenarioTests+CompositeParti allyAnnotatedDependent |
ProductModelProductDescriptionCulture | ProductModelProductDescriptionCulture | FunctionalTests.Model .ProductModelProductDescriptionCulture |
MaterializationTests+MyNonMappedTypeWith NestedNonMappedList | MyNonMappedTypeWithNestedNonMappedList | System.Data.Entity.Query.LinqToEntities .MaterializationTests+MyNonMappedTypeWit hNestedNonMappedList |
UseDefaultExecutionStrategyAttribute | UseDefaultExecutionStrategyAttribute | System.Data.Entity.TestHelpers .UseDefaultExecutionStrategyAttribute |
AlterTableAnnotationsScenarios+CreateTab leWithAllAnnotationMigration | CreateTableWithAllAnnotationMigration | System.Data.Entity.Migrations .AlterTableAnnotationsScenarios+CreateTa bleWithAllAnnotationMigration |
SpatialScenarios+AlterSpatialColumnWithD efaultMigration | AlterSpatialColumnWithDefaultMigration | System.Data.Entity.Migrations .SpatialScenarios+AlterSpatialColumnWith DefaultMigration |
AddColumnScenarios+AddNvarcharMaxStringC olumnCEMigration | AddNvarcharMaxStringColumnCEMigration | System.Data.Entity.Migrations .AddColumnScenarios+AddNvarcharMaxString ColumnCEMigration |
AddColumnScenarios+AddNvarcharMax64Strin gColumnMigration | AddNvarcharMax64StringColumnMigration | System.Data.Entity.Migrations .AddColumnScenarios+AddNvarcharMax64Stri ngColumnMigration |
AddColumnScenarios+AddNvarcharMax64Strin gColumnCEMigration | AddNvarcharMax64StringColumnCEMigration | System.Data.Entity.Migrations .AddColumnScenarios+AddNvarcharMax64Stri ngColumnCEMigration |
AlterColumnScenarios+AlterColumnWithAdde dAnnotationMigration | AlterColumnWithAddedAnnotationMigration | System.Data.Entity.Migrations .AlterColumnScenarios+AlterColumnWithAdd edAnnotationMigration |
AlterColumnScenarios+AlterColumnWithRemo vedAnnotationMigration | AlterColumnWithRemovedAnnotationMigration | System.Data.Entity.Migrations .AlterColumnScenarios+AlterColumnWithRem ovedAnnotationMigration |
AlterColumnScenarios+AlterColumnWithChan gedAnnotationMigration | AlterColumnWithChangedAnnotationMigration | System.Data.Entity.Migrations .AlterColumnScenarios+AlterColumnWithCha ngedAnnotationMigration |
AutoAndGenerateScenarios_AddTableWithGui dKey | AutoAndGenerateScenarios_AddTableWithGuidKey | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AddTableWithGu idKey |
AutoAndGenerateScenarios_RemoveTable | AutoAndGenerateScenarios_RemoveTable | System.Data.Entity.Migrations .AutoAndGenerateScenarios_RemoveTable |
AutoAndGenerateScenarios_ChangeTableSche ma | AutoAndGenerateScenarios_ChangeTableSchema | System.Data.Entity.Migrations .AutoAndGenerateScenarios_ChangeTableSch ema |
AutoAndGenerateScenarios_ChangeTableName | AutoAndGenerateScenarios_ChangeTableName | System.Data.Entity.Migrations .AutoAndGenerateScenarios_ChangeTableNam e |
AutoAndGenerateScenarios_ChangeTablePrim aryKey | AutoAndGenerateScenarios_ChangeTablePrimaryKey | System.Data.Entity.Migrations .AutoAndGenerateScenarios_ChangeTablePri maryKey |
AutoAndGenerateScenarios_CreateTableWith Annotations | AutoAndGenerateScenarios_CreateTableWithAnnotations | System.Data.Entity.Migrations .AutoAndGenerateScenarios_CreateTableWit hAnnotations |
AutoAndGenerateScenarios_CreateTableWith ColumnAnnotations | AutoAndGenerateScenarios_CreateTableWithColumnAnnotations | System.Data.Entity.Migrations .AutoAndGenerateScenarios_CreateTableWit hColumnAnnotations |
AutoAndGenerateScenarios_DropTableWithCo lumnAnnotations | AutoAndGenerateScenarios_DropTableWithColumnAnnotations | System.Data.Entity.Migrations .AutoAndGenerateScenarios_DropTableWithC olumnAnnotations |
AutoAndGenerateScenarios_DropTableWithAn notations | AutoAndGenerateScenarios_DropTableWithAnnotations | System.Data.Entity.Migrations .AutoAndGenerateScenarios_DropTableWithA nnotations |
AutoAndGenerateScenarios_AlterTableAnnot ations | AutoAndGenerateScenarios_AlterTableAnnotations | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterTableAnno tations |
AutoAndGenerateScenarios_RenameTableWith Annotations | AutoAndGenerateScenarios_RenameTableWithAnnotations | System.Data.Entity.Migrations .AutoAndGenerateScenarios_RenameTableWit hAnnotations |
AutoAndGenerateScenarios_AddForeignKey | AutoAndGenerateScenarios_AddForeignKey | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AddForeignKey |
AutoAndGenerateScenarios_AddPromotedFore ignKey | AutoAndGenerateScenarios_AddPromotedForeignKey | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AddPromotedFor eignKey |
AutoAndGenerateScenarios_RemoveForeignKe y | AutoAndGenerateScenarios_RemoveForeignKey | System.Data.Entity.Migrations .AutoAndGenerateScenarios_RemoveForeignK ey |
AutoAndGenerateScenarios_ChangeForeignKe yOnDeleteAction | AutoAndGenerateScenarios_ChangeForeignKeyOnDeleteAction | System.Data.Entity.Migrations .AutoAndGenerateScenarios_ChangeForeignK eyOnDeleteAction |
AutoAndGenerateScenarios_AddColumnNvarch arMax | AutoAndGenerateScenarios_AddColumnNvarcharMax | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AddColumnNvarc harMax |
AutoAndGenerateScenarios_AddColumnNvarch arMax64 | AutoAndGenerateScenarios_AddColumnNvarcharMax64 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AddColumnNvarc harMax64 |
AutoAndGenerateScenarios_AddColumnNvarch ar | AutoAndGenerateScenarios_AddColumnNvarchar | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AddColumnNvarc har |
AutoAndGenerateScenarios_AddColumnNvarch arMaxLength | AutoAndGenerateScenarios_AddColumnNvarcharMaxLength | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AddColumnNvarc harMaxLength |
AutoAndGenerateScenarios_AddColumnNvarch ar64 | AutoAndGenerateScenarios_AddColumnNvarchar64 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AddColumnNvarc har64 |
AutoAndGenerateScenarios_RemoveColumn | AutoAndGenerateScenarios_RemoveColumn | System.Data.Entity.Migrations .AutoAndGenerateScenarios_RemoveColumn |
AutoAndGenerateScenarios_AlterColumnName | AutoAndGenerateScenarios_AlterColumnName | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnNam e |
AutoAndGenerateScenarios_AlterSpatialCol umnNames | AutoAndGenerateScenarios_AlterSpatialColumnNames | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterSpatialCo lumnNames |
AutoAndGenerateScenarios_AlterColumnType <TContextV1,TContextV2> | AutoAndGenerateScenarios_AlterColumnType | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnTyp e<TContextV1,TContextV2> |
AutoAndGenerateScenarios_AlterColumnType _Decimal15ToDouble | AutoAndGenerateScenarios_AlterColumnType_Decimal15ToDouble | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnTyp e_Decimal15ToDouble |
AutoAndGenerateScenarios_AlterColumnType _SingleToDecimal16 | AutoAndGenerateScenarios_AlterColumnType_SingleToDecimal16 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnTyp e_SingleToDecimal16 |
AutoAndGenerateScenarios_AlterColumnType _SingleToDouble | AutoAndGenerateScenarios_AlterColumnType_SingleToDouble | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnTyp e_SingleToDouble |
AutoAndGenerateScenarios_AlterColumnType _SingleToDecimal11 | AutoAndGenerateScenarios_AlterColumnType_SingleToDecimal11 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnTyp e_SingleToDecimal11 |
AutoAndGenerateScenarios_AlterColumnType _Decimal6ToDouble | AutoAndGenerateScenarios_AlterColumnType_Decimal6ToDouble | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnTyp e_Decimal6ToDouble |
AutoAndGenerateScenarios_AlterColumnType _Int32ToInt64 | AutoAndGenerateScenarios_AlterColumnType_Int32ToInt64 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnTyp e_Int32ToInt64 |
AutoAndGenerateScenarios_AlterColumnType _Int16ToInt64 | AutoAndGenerateScenarios_AlterColumnType_Int16ToInt64 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnTyp e_Int16ToInt64 |
AutoAndGenerateScenarios_AlterColumnType _Int16ToInt32 | AutoAndGenerateScenarios_AlterColumnType_Int16ToInt32 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnTyp e_Int16ToInt32 |
AutoAndGenerateScenarios_AlterColumnType _ByteToInt64 | AutoAndGenerateScenarios_AlterColumnType_ByteToInt64 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnTyp e_ByteToInt64 |
AutoAndGenerateScenarios_AlterColumnType _ByteToInt32 | AutoAndGenerateScenarios_AlterColumnType_ByteToInt32 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnTyp e_ByteToInt32 |
AutoAndGenerateScenarios_AlterColumnType _ByteToInt16 | AutoAndGenerateScenarios_AlterColumnType_ByteToInt16 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnTyp e_ByteToInt16 |
AutoAndGenerateScenarios_AlterColumnFixe dLength | AutoAndGenerateScenarios_AlterColumnFixedLength | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnFix edLength |
AutoAndGenerateScenarios_AlterColumnMaxL ength<TContextV1,TContextV2> | AutoAndGenerateScenarios_AlterColumnMaxLength | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnMax Length<TContextV1,TContextV2> |
AutoAndGenerateScenarios_AlterColumn256_ Max | AutoAndGenerateScenarios_AlterColumn256_Max | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumn256 _Max |
AutoAndGenerateScenarios_AlterColumnMaxL ength_Max | AutoAndGenerateScenarios_AlterColumnMaxLength_Max | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnMax Length_Max |
AutoAndGenerateScenarios_AlterColumnMaxL ength_512 | AutoAndGenerateScenarios_AlterColumnMaxLength_512 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnMax Length_512 |
AutoAndGenerateScenarios_AlterColumnNull able | AutoAndGenerateScenarios_AlterColumnNullable | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnNul lable |
AutoAndGenerateScenarios_AlterColumnPrec ision | AutoAndGenerateScenarios_AlterColumnPrecision | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnPre cision |
AutoAndGenerateScenarios_AlterColumnScal e | AutoAndGenerateScenarios_AlterColumnScale | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnSca le |
AutoAndGenerateScenarios_AlterColumnUnic ode | AutoAndGenerateScenarios_AlterColumnUnicode | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnUni code |
AutoAndGenerateScenarios_AlterColumnChan gedAnnotations | AutoAndGenerateScenarios_AlterColumnChangedAnnotations | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnCha ngedAnnotations |
AutoAndGenerateScenarios_AlterColumnAdde dAnnotations | AutoAndGenerateScenarios_AlterColumnAddedAnnotations | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnAdd edAnnotations |
AutoAndGenerateScenarios_AlterColumnRemo vedAnnotations | AutoAndGenerateScenarios_AlterColumnRemovedAnnotations | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnRem ovedAnnotations |
AutoAndGenerateScenarios_AlterColumnEver ythingAnnotations | AutoAndGenerateScenarios_AlterColumnEverythingAnnotations | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnEve rythingAnnotations |
AutoAndGenerateScenarios_AlterColumnCust omAnnotation | AutoAndGenerateScenarios_AlterColumnCustomAnnotation | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnCus tomAnnotation |
AutoAndGenerateScenarios_AddColumnWithAn notations | AutoAndGenerateScenarios_AddColumnWithAnnotations | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AddColumnWithA nnotations |
AutoAndGenerateScenarios_DropColumnWithA nnotations | AutoAndGenerateScenarios_DropColumnWithAnnotations | System.Data.Entity.Migrations .AutoAndGenerateScenarios_DropColumnWith Annotations |
AutoAndGenerateScenarios_ChangeIndex | AutoAndGenerateScenarios_ChangeIndex | System.Data.Entity.Migrations .AutoAndGenerateScenarios_ChangeIndex |
AutoAndGenerateScenarios_LotsOfIndexStuf f | AutoAndGenerateScenarios_LotsOfIndexStuff | System.Data.Entity.Migrations .AutoAndGenerateScenarios_LotsOfIndexStu ff |
AutoAndGenerateScenarios_ImplicitIndexCh anges | AutoAndGenerateScenarios_ImplicitIndexChanges | System.Data.Entity.Migrations .AutoAndGenerateScenarios_ImplicitIndexC hanges |
AutoAndGenerateScenarios_DefaultNameInde xes | AutoAndGenerateScenarios_DefaultNameIndexes | System.Data.Entity.Migrations .AutoAndGenerateScenarios_DefaultNameInd exes |
AutoAndGenerateScenarios_RenameProcedure | AutoAndGenerateScenarios_RenameProcedure | System.Data.Entity.Migrations .AutoAndGenerateScenarios_RenameProcedur e |
AutoAndGenerateScenarios_AlterProcedure | AutoAndGenerateScenarios_AlterProcedure | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterProcedure |
AutoAndGenerateScenarios_MoveProcedure | AutoAndGenerateScenarios_MoveProcedure | System.Data.Entity.Migrations .AutoAndGenerateScenarios_MoveProcedure |
AutoAndGenerateScenarios_MoveProcedure_M anyToMany | AutoAndGenerateScenarios_MoveProcedure_ManyToMany | System.Data.Entity.Migrations .AutoAndGenerateScenarios_MoveProcedure_ ManyToMany |
AutoAndGenerateScenarios_RenameProcedure _ManyToMany | AutoAndGenerateScenarios_RenameProcedure_ManyToMany | System.Data.Entity.Migrations .AutoAndGenerateScenarios_RenameProcedur e_ManyToMany |
AutoAndGenerateScenarios_AlterProcedure_ ManyToMany | AutoAndGenerateScenarios_AlterProcedure_ManyToMany | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterProcedure _ManyToMany |
CreateTableScenarios+CreateTableWithTabl eAnnotationMigration | CreateTableWithTableAnnotationMigration | System.Data.Entity.Migrations .CreateTableScenarios+CreateTableWithTab leAnnotationMigration |
CreateTableScenarios+CreateTableWithColu mnAnnotationMigration | CreateTableWithColumnAnnotationMigration | System.Data.Entity.Migrations .CreateTableScenarios+CreateTableWithCol umnAnnotationMigration |
CreateTableScenarios+CreateTableWithAllA nnotationMigration | CreateTableWithAllAnnotationMigration | System.Data.Entity.Migrations .CreateTableScenarios+CreateTableWithAll AnnotationMigration |
GearsOfWarStoredProceduresInitializer | GearsOfWarStoredProceduresInitializer | System.Data.Entity.TestModels .GearsOfWarModel .GearsOfWarStoredProceduresInitializer |
DbContextTests+SaveChangesAsyncDoesntIni tializeContext | SaveChangesAsyncDoesntInitializeContext | ProductivityApiTests .DbContextTests+SaveChangesAsyncDoesntIn itializeContext |
DbContextTests+DerivedDerivedContextNoEx traSetsVariant | DerivedDerivedContextNoExtraSetsVariant | ProductivityApiTests .DbContextTests+DerivedDerivedContextNoE xtraSetsVariant |
DbContextTests+DerivedDerivedContextExtr aSetsVariant | DerivedDerivedContextExtraSetsVariant | ProductivityApiTests .DbContextTests+DerivedDerivedContextExt raSetsVariant |
DbContextTests+DuplicateSetWithDifferent SetTypesVariant | DuplicateSetWithDifferentSetTypesVariant | ProductivityApiTests .DbContextTests+DuplicateSetWithDifferen tSetTypesVariant |
DbContextTests+UseContextInCtorModelTwea kingVariant | UseContextInCtorModelTweakingVariant | ProductivityApiTests .DbContextTests+UseContextInCtorModelTwe akingVariant |
ComplexTypeTests+ContextWithComplexTypeT wiceOnSameEntity | ContextWithComplexTypeTwiceOnSameEntity | ProductivityApiTests .ComplexTypeTests+ContextWithComplexType TwiceOnSameEntity |
ComplexTypeTests+ContextWithSameComplexT ypeOnDifferentEntities | ContextWithSameComplexTypeOnDifferentEntities | ProductivityApiTests .ComplexTypeTests+ContextWithSameComplex TypeOnDifferentEntities |
ConnectionTests+OnModelConnectionContext WithOpenAndClose | OnModelConnectionContextWithOpenAndClose | ProductivityApiTests .ConnectionTests+OnModelConnectionContex tWithOpenAndClose |
ConnectionTests+InitializerForNonInitial izingConnectionTest | InitializerForNonInitializingConnectionTest | ProductivityApiTests .ConnectionTests+InitializerForNonInitia lizingConnectionTest |
DatabaseInitializationTests+SimpleContex tForDropCreateDatabaseAlways | SimpleContextForDropCreateDatabaseAlways | ProductivityApiTests .DatabaseInitializationTests+SimpleConte xtForDropCreateDatabaseAlways |
DatabaseInitializationTests+SimpleContex tForCreateDatabaseIfNotExists | SimpleContextForCreateDatabaseIfNotExists | ProductivityApiTests .DatabaseInitializationTests+SimpleConte xtForCreateDatabaseIfNotExists |
DatabaseInitializationTests+SchemaContex tCreateDatabaseIfNotExists | SchemaContextCreateDatabaseIfNotExists | ProductivityApiTests .DatabaseInitializationTests+SchemaConte xtCreateDatabaseIfNotExists |
DatabaseInitializationTests+SimpleContex tForDropCreateDatabaseIfModelChanges | SimpleContextForDropCreateDatabaseIfModelChanges | ProductivityApiTests .DatabaseInitializationTests+SimpleConte xtForDropCreateDatabaseIfModelChanges |
DatabaseInitializationTests+SimpleDropCr eateDatabaseIfModelChanges | SimpleDropCreateDatabaseIfModelChanges | ProductivityApiTests .DatabaseInitializationTests+SimpleDropC reateDatabaseIfModelChanges |
DatabaseInitializationTests+InitializerF orBadMappingCaseWithQuery | InitializerForBadMappingCaseWithQuery | ProductivityApiTests .DatabaseInitializationTests+Initializer ForBadMappingCaseWithQuery |
DatabaseTests+MutatingConnectionContextI nitializer<TContext> | MutatingConnectionContextInitializer | ProductivityApiTests .DatabaseTests+MutatingConnectionContext Initializer<TContext> |
LinqTests+ClassWithContextPropertyAndOth erProperties | ClassWithContextPropertyAndOtherProperties | ProductivityApiTests .LinqTests+ClassWithContextPropertyAndOt herProperties |
Statistics
Stat | SimpleName |
---|---|
Sum: | 0 |
Average: | 0 |
Minimum: | 0 |
Maximum: | 0 |
Standard deviation: | 0 |
Variance: | 0 |
![]() | Rule warning: Avoid methods with name too long |
warnif count > 0 from m in Application.Methods where
!m.IsExplicitInterfaceImpl &&
!m.IsGeneratedByCompiler &&
((!m.IsSpecialName && m.SimpleName.Length > 35) ||
// Property getter/setter are prefixed with "get_" "set_" of length 4.
( m.IsSpecialName && m.SimpleName.Length - 4 > 35))
select new { m, m.SimpleName }
// The regex matches methods with name longer
// than 35 characters.
// Method Name doesn't contain the type and namespace
// prefix, FullName does.
// The regex computes the method name length from
// the beginning until the first open parenthesis
// or first lower than (for generic methods).
// Explicit Interface Implementation methods are
// discarded because their names are prefixed
// with the interface name.
View Code Query or Rule BodyView Code Query or Rule Body
11,623 methods matched
methods | SimpleName | Full Name |
---|---|---|
get_SystemComponentModelDataAnnotationsA ssembly() | get_SystemComponentModelDataAnnotationsAssembly | System.Data.Entity.TestBase .get_SystemComponentModelDataAnnotations Assembly() |
SimpleConnectionStringWithCredentials (String,String,String,Boolean) | SimpleConnectionStringWithCredentials | System.Data.Entity.TestBase .SimpleConnectionStringWithCredentials (String,String,String,Boolean) |
SimpleConnectionStringWithCredentials <TContext>(String,String,Boolean) | SimpleConnectionStringWithCredentials | System.Data.Entity.TestBase .SimpleConnectionStringWithCredentials <TContext>(String,String,Boolean) |
SimpleAttachConnectionStringWithCredenti als<TContext>(String,String,Boolean) | SimpleAttachConnectionStringWithCredentials | System.Data.Entity.TestBase .SimpleAttachConnectionStringWithCredent ials<TContext>(String,String,Boolean) |
VerifyConnectionOpenCloseEventsWereFired () | VerifyConnectionOpenCloseEventsWereFired | System.Data.Entity .ConnectionEventsTracker .VerifyConnectionOpenCloseEventsWereFire d() |
get_EnumerableNotImplementedExceptionMes sage() | get_EnumerableNotImplementedExceptionMessage | System.Data.Entity.ExceptionHelpers .get_EnumerableNotImplementedExceptionMe ssage() |
CreateIEnumerableNotImplementedException () | CreateIEnumerableNotImplementedException | System.Data.Entity.ExceptionHelpers .CreateIEnumerableNotImplementedExceptio n() |
SimpleAttachConnectionStringWithCredenti als(String,String,String,Boolean) | SimpleAttachConnectionStringWithCredentials | System.Data.Entity.ModelHelpers .SimpleAttachConnectionStringWithCredent ials(String,String,String,Boolean) |
SimpleConnectionStringWithCredentials (String,String,String,Boolean) | SimpleConnectionStringWithCredentials | System.Data.Entity.ModelHelpers .SimpleConnectionStringWithCredentials (String,String,String,Boolean) |
SimpleConnectionStringWithCredentials <TContext>(String,String,Boolean) | SimpleConnectionStringWithCredentials | System.Data.Entity.ModelHelpers .SimpleConnectionStringWithCredentials <TContext>(String,String,Boolean) |
SimpleAttachConnectionStringWithCredenti als<TContext>(String,String,Boolean) | SimpleAttachConnectionStringWithCredentials | System.Data.Entity.ModelHelpers .SimpleAttachConnectionStringWithCredent ials<TContext>(String,String,Boolean) |
ExtractCompressedResourceToDirectory (String,Assembly,String) | ExtractCompressedResourceToDirectory | System.Data.Entity.ResourceUtilities .ExtractCompressedResourceToDirectory (String,Assembly,String) |
CodePlex643_entities_are_configured_corr ectly() | CodePlex643_entities_are_configured_correctly | System.Data.Entity.CodeFirst .TableSplittingTests .CodePlex643_entities_are_configured_cor rectly() |
CodePlex677_entities_are_configured_corr ectly() | CodePlex677_entities_are_configured_correctly | System.Data.Entity.CodeFirst .TableSplittingTests .CodePlex677_entities_are_configured_cor rectly() |
CodePlex362_SSpace_associations_are_crea ted_correctly() | CodePlex362_SSpace_associations_are_created_correctly | System.Data.Entity.CodeFirst .TptMappingTests .CodePlex362_SSpace_associations_are_cre ated_correctly() |
Can_invoke_operations_accross_boundaries () | Can_invoke_operations_accross_boundaries | System.Data.Entity.Design .BasicDesignTimeScenarios .Can_invoke_operations_accross_boundarie s() |
Uses_configuration_from_specified_assemb ly() | Uses_configuration_from_specified_assembly | System.Data.Entity.Design .BasicDesignTimeScenarios .Uses_configuration_from_specified_assem bly() |
Complex_type_with_eumm_property_is_mappe d_correctly_POCO() | Complex_type_with_eumm_property_is_mapped_correctly_POCO | System.Data.Entity.MetadataMapping .EnumOCMappingTests .Complex_type_with_eumm_property_is_mapp ed_correctly_POCO() |
Enums_with_members_with_same_values_are_ mapped_even_if_order_is_different_POCO() | Enums_with_members_with_same_values_are_mapped_even_if_order_is_different_POCO | System.Data.Entity.MetadataMapping .EnumOCMappingTests .Enums_with_members_with_same_values_are _mapped_even_if_order_is_different_POCO( ) |
Nullability_of_enum_properties_ignored_f or_mapping_POCO() | Nullability_of_enum_properties_ignored_for_mapping_POCO | System.Data.Entity.MetadataMapping .EnumOCMappingTests .Nullability_of_enum_properties_ignored_ for_mapping_POCO() |
Can_map_enum_type_with_no_members_POCO() | Can_map_enum_type_with_no_members_POCO | System.Data.Entity.MetadataMapping .EnumOCMappingTests .Can_map_enum_type_with_no_members_POCO( ) |
Cannot_map_OSpace_enum_type_with_unsuppo rted_underlying_type_POCO() | Cannot_map_OSpace_enum_type_with_unsupported_underlying_type_POCO | System.Data.Entity.MetadataMapping .EnumOCMappingTests .Cannot_map_OSpace_enum_type_with_unsupp orted_underlying_type_POCO() |
Cannot_map_enum_types_if_names_are_diffe rent_POCO() | Cannot_map_enum_types_if_names_are_different_POCO | System.Data.Entity.MetadataMapping .EnumOCMappingTests .Cannot_map_enum_types_if_names_are_diff erent_POCO() |
Cannot_map_enum_types_if_underlying_type s_dont_match_POCO() | Cannot_map_enum_types_if_underlying_types_dont_match_POCO | System.Data.Entity.MetadataMapping .EnumOCMappingTests .Cannot_map_enum_types_if_underlying_typ es_dont_match_POCO() |
Cannot_map_OSpace_enum_type_with_fewer_m embers_than_CSpace_enum_type_POCO() | Cannot_map_OSpace_enum_type_with_fewer_members_than_CSpace_enum_type_POCO | System.Data.Entity.MetadataMapping .EnumOCMappingTests .Cannot_map_OSpace_enum_type_with_fewer_ members_than_CSpace_enum_type_POCO() |
Cannot_map_OSpace_enum_type_whose_member _name_does_not_match_CSpace_enum_type_me mber_name_POCO() | Cannot_map_OSpace_enum_type_whose_member_name_does_not_match_CSpace_enum_type_member_name_POCO | System.Data.Entity.MetadataMapping .EnumOCMappingTests .Cannot_map_OSpace_enum_type_whose_membe r_name_does_not_match_CSpace_enum_type_m ember_name_POCO() |
Can_map_OSpace_enum_type_that_has_more_m embers_than_CSPace_enum_type_if_members_ match_POCO() | Can_map_OSpace_enum_type_that_has_more_members_than_CSPace_enum_type_if_members_match_POCO | System.Data.Entity.MetadataMapping .EnumOCMappingTests .Can_map_OSpace_enum_type_that_has_more_ members_than_CSPace_enum_type_if_members _match_POCO() |
Can_map_CSpace_enum_type_with_no_enum_me mbers_POCO() | Can_map_CSpace_enum_type_with_no_enum_members_POCO | System.Data.Entity.MetadataMapping .EnumOCMappingTests .Can_map_CSpace_enum_type_with_no_enum_m embers_POCO() |
Cannot_map_if_OSpace_enum_type_member_va lue_does_not_match_CSpace_enum_type_memb er_value_POCO() | Cannot_map_if_OSpace_enum_type_member_value_does_not_match_CSpace_enum_type_member_value_POCO | System.Data.Entity.MetadataMapping .EnumOCMappingTests .Cannot_map_if_OSpace_enum_type_member_v alue_does_not_match_CSpace_enum_type_mem ber_value_POCO() |
Verify_OSpace_enum_type_is_not_mapped_to _CSpace_entity_type_with_same_name_POCO( ) | Verify_OSpace_enum_type_is_not_mapped_to_CSpace_entity_type_with_same_name_POCO | System.Data.Entity.MetadataMapping .EnumOCMappingTests .Verify_OSpace_enum_type_is_not_mapped_t o_CSpace_entity_type_with_same_name_POCO () |
Verify_OSpace_entity_type_is_not_mapped_ to_CSpace_enum_type_with_same_name_POCO( ) | Verify_OSpace_entity_type_is_not_mapped_to_CSpace_enum_type_with_same_name_POCO | System.Data.Entity.MetadataMapping .EnumOCMappingTests .Verify_OSpace_entity_type_is_not_mapped _to_CSpace_enum_type_with_same_name_POCO () |
Correct_CSpace_enum_type_is_mapped_if_mu ltiple_OSpace_enum_types_exist_but_only_ one_matches() | Correct_CSpace_enum_type_is_mapped_if_multiple_OSpace_enum_types_exist_but_only_one_matches | System.Data.Entity.MetadataMapping .EnumOCMappingTests .Correct_CSpace_enum_type_is_mapped_if_m ultiple_OSpace_enum_types_exist_but_only _one_matches() |
Mapping_fails_for_multiple_OSpace_enum_t ypes_matching_the_same_CSpace_enum_type_ POCO() | Mapping_fails_for_multiple_OSpace_enum_types_matching_the_same_CSpace_enum_type_POCO | System.Data.Entity.MetadataMapping .EnumOCMappingTests .Mapping_fails_for_multiple_OSpace_enum_ types_matching_the_same_CSpace_enum_type _POCO() |
Cannot_create_workspace_if_OSpace_enum_p roperty_does_not_have_getter() | Cannot_create_workspace_if_OSpace_enum_property_does_not_have_getter | System.Data.Entity.MetadataMapping .EnumOCMappingTests .Cannot_create_workspace_if_OSpace_enum_ property_does_not_have_getter() |
Cannot_create_workspace_if_OSpace_enum_p roperty_does_not_have_setter() | Cannot_create_workspace_if_OSpace_enum_property_does_not_have_setter | System.Data.Entity.MetadataMapping .EnumOCMappingTests .Cannot_create_workspace_if_OSpace_enum_ property_does_not_have_setter() |
Can_load_entity_with_property_of_enum_ty pe_from_different_assembly() | Can_load_entity_with_property_of_enum_type_from_different_assembly | System.Data.Entity.MetadataMapping .EnumOCMappingTests .Can_load_entity_with_property_of_enum_t ype_from_different_assembly() |
Complex_type_with_enum_property_is_mappe d_correctly_NonPOCO() | Complex_type_with_enum_property_is_mapped_correctly_NonPOCO | System.Data.Entity.MetadataMapping .EnumOCMappingTests .Complex_type_with_enum_property_is_mapp ed_correctly_NonPOCO() |
Enums_with_members_with_same_values_are_ mapped_even_if_order_is_different_NonPOC O() | Enums_with_members_with_same_values_are_mapped_even_if_order_is_different_NonPOCO | System.Data.Entity.MetadataMapping .EnumOCMappingTests .Enums_with_members_with_same_values_are _mapped_even_if_order_is_different_NonPO CO() |
Nullability_of_enum_properties_ignored_f or_mapping_NonPOCO() | Nullability_of_enum_properties_ignored_for_mapping_NonPOCO | System.Data.Entity.MetadataMapping .EnumOCMappingTests .Nullability_of_enum_properties_ignored_ for_mapping_NonPOCO() |
Can_map_enum_type_with_no_members_NonPOC O() | Can_map_enum_type_with_no_members_NonPOCO | System.Data.Entity.MetadataMapping .EnumOCMappingTests .Can_map_enum_type_with_no_members_NonPO CO() |
Cannot_map_OSpace_enum_type_with_unsuppo rted_underlying_NonPOCO() | Cannot_map_OSpace_enum_type_with_unsupported_underlying_NonPOCO | System.Data.Entity.MetadataMapping .EnumOCMappingTests .Cannot_map_OSpace_enum_type_with_unsupp orted_underlying_NonPOCO() |
Cannot_map_enum_types_if_names_are_diffe rent_NonPOCO() | Cannot_map_enum_types_if_names_are_different_NonPOCO | System.Data.Entity.MetadataMapping .EnumOCMappingTests .Cannot_map_enum_types_if_names_are_diff erent_NonPOCO() |
OSpaceEnumUnderlyingTypeDoesNotMatchCSpa ceEnumUnderlyingTypeName_NonPOCO() | OSpaceEnumUnderlyingTypeDoesNotMatchCSpaceEnumUnderlyingTypeName_NonPOCO | System.Data.Entity.MetadataMapping .EnumOCMappingTests .OSpaceEnumUnderlyingTypeDoesNotMatchCSp aceEnumUnderlyingTypeName_NonPOCO() |
Cannot_map_OSpace_enum_type_with_fewer_m embers_than_CSpace_enum_type_NonPOCO() | Cannot_map_OSpace_enum_type_with_fewer_members_than_CSpace_enum_type_NonPOCO | System.Data.Entity.MetadataMapping .EnumOCMappingTests .Cannot_map_OSpace_enum_type_with_fewer_ members_than_CSpace_enum_type_NonPOCO() |
OSpaceEnumTypeMemberNameDoesNotMatchCSpa ceEnumTypeMemberName_NonPOCO() | OSpaceEnumTypeMemberNameDoesNotMatchCSpaceEnumTypeMemberName_NonPOCO | System.Data.Entity.MetadataMapping .EnumOCMappingTests .OSpaceEnumTypeMemberNameDoesNotMatchCSp aceEnumTypeMemberName_NonPOCO() |
Can_map_OSpace_enum_type_that_has_more_m embers_than_CSPace_enum_type_if_members_ match_NonPOCO() | Can_map_OSpace_enum_type_that_has_more_members_than_CSPace_enum_type_if_members_match_NonPOCO | System.Data.Entity.MetadataMapping .EnumOCMappingTests .Can_map_OSpace_enum_type_that_has_more_ members_than_CSPace_enum_type_if_members _match_NonPOCO() |
Can_map_CSpace_enum_type_with_no_enum_me mbers_NonPOCO() | Can_map_CSpace_enum_type_with_no_enum_members_NonPOCO | System.Data.Entity.MetadataMapping .EnumOCMappingTests .Can_map_CSpace_enum_type_with_no_enum_m embers_NonPOCO() |
Cannot_map_if_OSpace_enum_type_member_va lue_does_not_match_CSpace_enum_type_memb er_value_NonPOCO() | Cannot_map_if_OSpace_enum_type_member_value_does_not_match_CSpace_enum_type_member_value_NonPOCO | System.Data.Entity.MetadataMapping .EnumOCMappingTests .Cannot_map_if_OSpace_enum_type_member_v alue_does_not_match_CSpace_enum_type_mem ber_value_NonPOCO() |
Cannot_map_OSpace_enum_type_to_CSpace_en tity_type_with_the_same_name_NonPOCO() | Cannot_map_OSpace_enum_type_to_CSpace_entity_type_with_the_same_name_NonPOCO | System.Data.Entity.MetadataMapping .EnumOCMappingTests .Cannot_map_OSpace_enum_type_to_CSpace_e ntity_type_with_the_same_name_NonPOCO() |
Cannot_map_OSpace_entity_type_to_CSpace_ enum_type_with_the_same_name_NonPOCO() | Cannot_map_OSpace_entity_type_to_CSpace_enum_type_with_the_same_name_NonPOCO | System.Data.Entity.MetadataMapping .EnumOCMappingTests .Cannot_map_OSpace_entity_type_to_CSpace _enum_type_with_the_same_name_NonPOCO() |
EnumTypeVerifiedWhenLoadingEntityWithPro pertyOfThisEnumType_NonPOCO() | EnumTypeVerifiedWhenLoadingEntityWithPropertyOfThisEnumType_NonPOCO | System.Data.Entity.MetadataMapping .EnumOCMappingTests .EnumTypeVerifiedWhenLoadingEntityWithPr opertyOfThisEnumType_NonPOCO() |
Can_use_EdmEnumType_attribute_to_map_OSp ace_enum_type_to_CSpace_enum_type_with_d ifferent_name_NonPOCO() | Can_use_EdmEnumType_attribute_to_map_OSpace_enum_type_to_CSpace_enum_type_with_different_name_NonPOCO | System.Data.Entity.MetadataMapping .EnumOCMappingTests .Can_use_EdmEnumType_attribute_to_map_OS pace_enum_type_to_CSpace_enum_type_with_ different_name_NonPOCO() |
Cannot_use_OSpace_enum_type_as_property_ type_if_it_does_not_have_EdmTypeAttribut e() | Cannot_use_OSpace_enum_type_as_property_type_if_it_does_not_have_EdmTypeAttribute | System.Data.Entity.MetadataMapping .EnumOCMappingTests .Cannot_use_OSpace_enum_type_as_property _type_if_it_does_not_have_EdmTypeAttribu te() |
Cannot_have_2_OSpace_enum_types_mapped_t o_single_CSpace_enum_type() | Cannot_have_2_OSpace_enum_types_mapped_to_single_CSpace_enum_type | System.Data.Entity.MetadataMapping .EnumOCMappingTests .Cannot_have_2_OSpace_enum_types_mapped_ to_single_CSpace_enum_type() |
Complex_type_with_enum_property_is_mappe d_correctly(Boolean) | Complex_type_with_enum_property_is_mapped_correctly | System.Data.Entity.MetadataMapping .EnumOCMappingTests .Complex_type_with_enum_property_is_mapp ed_correctly(Boolean) |
Enums_with_members_with_same_values_are_ mapped_even_if_order_is_different (Boolean) | Enums_with_members_with_same_values_are_mapped_even_if_order_is_different | System.Data.Entity.MetadataMapping .EnumOCMappingTests .Enums_with_members_with_same_values_are _mapped_even_if_order_is_different (Boolean) |
Nullability_of_enum_properties_ignored_f or_mapping(Boolean) | Nullability_of_enum_properties_ignored_for_mapping | System.Data.Entity.MetadataMapping .EnumOCMappingTests .Nullability_of_enum_properties_ignored_ for_mapping(Boolean) |
Cannot_map_OSpace_enum_type_with_unsuppo rted_underlying_type(Boolean) | Cannot_map_OSpace_enum_type_with_unsupported_underlying_type | System.Data.Entity.MetadataMapping .EnumOCMappingTests .Cannot_map_OSpace_enum_type_with_unsupp orted_underlying_type(Boolean) |
Cannot_map_enum_types_if_names_are_diffe rent(Boolean) | Cannot_map_enum_types_if_names_are_different | System.Data.Entity.MetadataMapping .EnumOCMappingTests .Cannot_map_enum_types_if_names_are_diff erent(Boolean) |
Cannot_map_enum_types_if_underlying_type s_dont_match(Boolean) | Cannot_map_enum_types_if_underlying_types_dont_match | System.Data.Entity.MetadataMapping .EnumOCMappingTests .Cannot_map_enum_types_if_underlying_typ es_dont_match(Boolean) |
Cannot_map_OSpace_enum_type_with_fewer_m embers_than_CSpace_enum_type(Boolean) | Cannot_map_OSpace_enum_type_with_fewer_members_than_CSpace_enum_type | System.Data.Entity.MetadataMapping .EnumOCMappingTests .Cannot_map_OSpace_enum_type_with_fewer_ members_than_CSpace_enum_type(Boolean) |
Cannot_map_OSpace_enum_type_whose_member _name_does_not_match_CSpace_enum_type_me mber_name(Boolean) | Cannot_map_OSpace_enum_type_whose_member_name_does_not_match_CSpace_enum_type_member_name | System.Data.Entity.MetadataMapping .EnumOCMappingTests .Cannot_map_OSpace_enum_type_whose_membe r_name_does_not_match_CSpace_enum_type_m ember_name(Boolean) |
Can_map_OSpace_enum_type_that_has_more_m embers_than_CSPace_enum_type_if_members_ match(Boolean) | Can_map_OSpace_enum_type_that_has_more_members_than_CSPace_enum_type_if_members_match | System.Data.Entity.MetadataMapping .EnumOCMappingTests .Can_map_OSpace_enum_type_that_has_more_ members_than_CSPace_enum_type_if_members _match(Boolean) |
Can_map_CSpace_enum_type_with_no_enum_me mbers(Boolean) | Can_map_CSpace_enum_type_with_no_enum_members | System.Data.Entity.MetadataMapping .EnumOCMappingTests .Can_map_CSpace_enum_type_with_no_enum_m embers(Boolean) |
Cannot_map_if_OSpace_enum_type_member_va lue_does_not_match_CSpace_enum_type_memb er_value(Boolean) | Cannot_map_if_OSpace_enum_type_member_value_does_not_match_CSpace_enum_type_member_value | System.Data.Entity.MetadataMapping .EnumOCMappingTests .Cannot_map_if_OSpace_enum_type_member_v alue_does_not_match_CSpace_enum_type_mem ber_value(Boolean) |
OSpace_enum_type_and_CSpace_entity_type_ have_the_same_name(Boolean) | OSpace_enum_type_and_CSpace_entity_type_have_the_same_name | System.Data.Entity.MetadataMapping .EnumOCMappingTests .OSpace_enum_type_and_CSpace_entity_type _have_the_same_name(Boolean) |
OSpace_entity_type_and_CSpace_enum_type_ have_the_same_name(Boolean) | OSpace_entity_type_and_CSpace_enum_type_have_the_same_name | System.Data.Entity.MetadataMapping .EnumOCMappingTests .OSpace_entity_type_and_CSpace_enum_type _have_the_same_name(Boolean) |
Can_map_join_table_for_many_to_many_if_n ames_do_not_match_convention_with_fluent _API() | Can_map_join_table_for_many_to_many_if_names_do_not_match_convention_with_fluent_API | FunctionalTests .AdvancedMappingScenarioTests .Can_map_join_table_for_many_to_many_if_ names_do_not_match_convention_with_fluen t_API() |
Can_map_join_table_for_many_to_many_if_n ames_do_not_match_convention_with_annota tions() | Can_map_join_table_for_many_to_many_if_names_do_not_match_convention_with_annotations | FunctionalTests .AdvancedMappingScenarioTests .Can_map_join_table_for_many_to_many_if_ names_do_not_match_convention_with_annot ations() |
Can_map_join_table_for_many_to_many_if_n ames_do_not_match_convention(Action <DynamicTypeDescriptionConfiguration <AdvancedMappingScenarioTests+SomeRole> ,DynamicTypeDescriptionConfiguration <AdvancedMappingScenarioTests+SomeUser> ,DynamicTypeDescriptionConfiguration <AdvancedMappingScenarioTests+UserRole> ,AdventureWorksModelBuilder>) | Can_map_join_table_for_many_to_many_if_names_do_not_match_convention | FunctionalTests .AdvancedMappingScenarioTests .Can_map_join_table_for_many_to_many_if_ names_do_not_match_convention(Action <DynamicTypeDescriptionConfiguration <AdvancedMappingScenarioTests+SomeRole> ,DynamicTypeDescriptionConfiguration <AdvancedMappingScenarioTests+SomeUser> ,DynamicTypeDescriptionConfiguration <AdvancedMappingScenarioTests+UserRole> ,AdventureWorksModelBuilder>) |
Sql_ce_should_get_explicit_max_lengths_f or_string_and_binary_properties_by_conve ntion() | Sql_ce_should_get_explicit_max_lengths_for_string_and_binary_properties_by_convention | FunctionalTests .AdvancedMappingScenarioTests .Sql_ce_should_get_explicit_max_lengths_ for_string_and_binary_properties_by_conv ention() |
Sql_ce_should_get_explicit_max_lengths_f or_fixed_length_string_and_fixed_length_ binary_properties_by_convention() | Sql_ce_should_get_explicit_max_lengths_for_fixed_length_string_and_fixed_length_binary_properties_by_convention | FunctionalTests .AdvancedMappingScenarioTests .Sql_ce_should_get_explicit_max_lengths_ for_fixed_length_string_and_fixed_length _binary_properties_by_convention() |
Sql_should_get_implicit_max_lengths_for_ string_and_binary_properties_by_conventi on() | Sql_should_get_implicit_max_lengths_for_string_and_binary_properties_by_convention | FunctionalTests .AdvancedMappingScenarioTests .Sql_should_get_implicit_max_lengths_for _string_and_binary_properties_by_convent ion() |
Sql_should_get_explicit_max_lengths_for_ fixed_length_string_and_fixed_length_bin ary_properties_by_convention() | Sql_should_get_explicit_max_lengths_for_fixed_length_string_and_fixed_length_binary_properties_by_convention | FunctionalTests .AdvancedMappingScenarioTests .Sql_should_get_explicit_max_lengths_for _fixed_length_string_and_fixed_length_bi nary_properties_by_convention() |
Can_have_configured_duplicate_column_and _by_convention_column_is_uniquified() | Can_have_configured_duplicate_column_and_by_convention_column_is_uniquified | FunctionalTests .AdvancedMappingScenarioTests .Can_have_configured_duplicate_column_an d_by_convention_column_is_uniquified() |
Can_have_configured_duplicate_column_and _by_convention_columns_are_uniquified_fi rst() | Can_have_configured_duplicate_column_and_by_convention_columns_are_uniquified_first | FunctionalTests .AdvancedMappingScenarioTests .Can_have_configured_duplicate_column_an d_by_convention_columns_are_uniquified_f irst() |
Can_have_configured_duplicate_column_and _by_convention_columns_are_uniquified_se cond() | Can_have_configured_duplicate_column_and_by_convention_columns_are_uniquified_second | FunctionalTests .AdvancedMappingScenarioTests .Can_have_configured_duplicate_column_an d_by_convention_columns_are_uniquified_s econd() |
Can_have_configured_duplicate_column_and _by_convention_columns_are_uniquified_th ird() | Can_have_configured_duplicate_column_and_by_convention_columns_are_uniquified_third | FunctionalTests .AdvancedMappingScenarioTests .Can_have_configured_duplicate_column_an d_by_convention_columns_are_uniquified_t hird() |
Can_have_configured_duplicate_column_and _by_convention_columns_are_uniquified_co mplex() | Can_have_configured_duplicate_column_and_by_convention_columns_are_uniquified_complex | FunctionalTests .AdvancedMappingScenarioTests .Can_have_configured_duplicate_column_an d_by_convention_columns_are_uniquified_c omplex() |
Can_have_configured_complex_column_overr ide_column_name_clash() | Can_have_configured_complex_column_override_column_name_clash | FunctionalTests .AdvancedMappingScenarioTests .Can_have_configured_complex_column_over ride_column_name_clash() |
Can_have_configured_duplicate_column_and _by_convention_columns_are_uniquified_co nflict() | Can_have_configured_duplicate_column_and_by_convention_columns_are_uniquified_conflict | FunctionalTests .AdvancedMappingScenarioTests .Can_have_configured_duplicate_column_an d_by_convention_columns_are_uniquified_c onflict() |
Can_table_split_and_conflicting_columns_ are_uniquified() | Can_table_split_and_conflicting_columns_are_uniquified | FunctionalTests .AdvancedMappingScenarioTests .Can_table_split_and_conflicting_columns _are_uniquified() |
Table_splitting_with_conflicting_annotat ions_to_same_table_throws() | Table_splitting_with_conflicting_annotations_to_same_table_throws | FunctionalTests .AdvancedMappingScenarioTests .Table_splitting_with_conflicting_annota tions_to_same_table_throws() |
Can_table_split_and_conflicting_columns_ can_be_configured() | Can_table_split_and_conflicting_columns_can_be_configured | FunctionalTests .AdvancedMappingScenarioTests .Can_table_split_and_conflicting_columns _can_be_configured() |
Single_abstract_type_with_associations_t hrows_not_mappable_exception() | Single_abstract_type_with_associations_throws_not_mappable_exception | FunctionalTests .AdvancedMappingScenarioTests .Single_abstract_type_with_associations_ throws_not_mappable_exception() |
Configured_decimal_key_gets_correct_face t_defaults() | Configured_decimal_key_gets_correct_facet_defaults | FunctionalTests .AdvancedMappingScenarioTests .Configured_decimal_key_gets_correct_fac et_defaults() |
Decimal_key_with_custom_store_type_shoul d_propagate_facets() | Decimal_key_with_custom_store_type_should_propagate_facets | FunctionalTests .AdvancedMappingScenarioTests .Decimal_key_with_custom_store_type_shou ld_propagate_facets() |
Throw_when_mapping_properties_expression _contains_assignments() | Throw_when_mapping_properties_expression_contains_assignments | FunctionalTests .AdvancedMappingScenarioTests .Throw_when_mapping_properties_expressio n_contains_assignments() |
Circular_delete_cascade_path_can_be_gene rated() | Circular_delete_cascade_path_can_be_generated | FunctionalTests .AdvancedMappingScenarioTests .Circular_delete_cascade_path_can_be_gen erated() |
Build_model_for_entity_splitting_differe nce_schemas() | Build_model_for_entity_splitting_difference_schemas | FunctionalTests .AdvancedMappingScenarioTests .Build_model_for_entity_splitting_differ ence_schemas() |
Build_model_for_mapping_to_duplicate_tab les_different_schemas() | Build_model_for_mapping_to_duplicate_tables_different_schemas | FunctionalTests .AdvancedMappingScenarioTests .Build_model_for_mapping_to_duplicate_ta bles_different_schemas() |
Build_model_after_configuring_entity_set _name() | Build_model_after_configuring_entity_set_name | FunctionalTests .AdvancedMappingScenarioTests .Build_model_after_configuring_entity_se t_name() |
FK_attribute_with_inverse_property_shoul d_create_fk_association() | FK_attribute_with_inverse_property_should_create_fk_association | FunctionalTests.AssociationScenarioTests .FK_attribute_with_inverse_property_shou ld_create_fk_association() |
CascadeOnDelete_fluent_overrides_data_an otation() | CascadeOnDelete_fluent_overrides_data_anotation | FunctionalTests.AssociationScenarioTests .CascadeOnDelete_fluent_overrides_data_a notation() |
CascadeOnDelete_fluent_overrides_data_an otation_implementation(IEnumerable <Action<DbModelBuilder>>) | CascadeOnDelete_fluent_overrides_data_anotation_implementation | FunctionalTests.AssociationScenarioTests .CascadeOnDelete_fluent_overrides_data_a notation_implementation(IEnumerable <Action<DbModelBuilder>>) |
Required_on_dependent_nav_prop_with_fore ign_key_attribute_on_fk() | Required_on_dependent_nav_prop_with_foreign_key_attribute_on_fk | FunctionalTests.AssociationScenarioTests .Required_on_dependent_nav_prop_with_for eign_key_attribute_on_fk() |
Required_on_dependent_nav_prop_with_fore ign_key_attribute_on_nav() | Required_on_dependent_nav_prop_with_foreign_key_attribute_on_nav | FunctionalTests.AssociationScenarioTests .Required_on_dependent_nav_prop_with_for eign_key_attribute_on_nav() |
Required_on_principal_and_dependent_nav_ prop_with_foreign_key_attribute_on_fk() | Required_on_principal_and_dependent_nav_prop_with_foreign_key_attribute_on_fk | FunctionalTests.AssociationScenarioTests .Required_on_principal_and_dependent_nav _prop_with_foreign_key_attribute_on_fk() |
Should_not_detect_one_to_one_fk_that_is_ not_the_dependent_pk() | Should_not_detect_one_to_one_fk_that_is_not_the_dependent_pk | FunctionalTests.AssociationScenarioTests .Should_not_detect_one_to_one_fk_that_is _not_the_dependent_pk() |
Can_detect_overlapping_key_by_convention () | Can_detect_overlapping_key_by_convention | FunctionalTests.AssociationScenarioTests .Can_detect_overlapping_key_by_conventio n() |
Statistics
Stat | SimpleName |
---|---|
Sum: | 0 |
Average: | 0 |
Minimum: | 0 |
Maximum: | 0 |
Standard deviation: | 0 |
Variance: | 0 |
![]() | Rule warning: Avoid fields with name too long |
warnif count > 0 from f in Application.Fields where
!f.IsGeneratedByCompiler &&
f.Name.Length > 35
select f
// The regex matches fields with name longer
// than 35 characters.
// Field Name doesn't contain the type and
// namespace prefix, FullName does.
View Code Query or Rule BodyView Code Query or Rule Body
29 fields matched
fields | Full Name |
---|---|
_productModelProductDescriptionCultures | FunctionalTests.Model.Culture ._productModelProductDescriptionCultures |
_productModelProductDescriptionCultures | FunctionalTests.Model.ProductModel ._productModelProductDescriptionCultures |
_skip_no_limit_with_inheritance_expected Sql | System.Data.Entity.Query .SqlGeneratorTests+SkipLimit ._skip_no_limit_with_inheritance_expecte dSql |
_nested_skip_limits_in_select_expectedSq l | System.Data.Entity.Query .SqlGeneratorTests+SkipLimit ._nested_skip_limits_in_select_expectedS ql |
_nested_skip_limits_in_from_expectedSql | System.Data.Entity.Query .SqlGeneratorTests+SkipLimit ._nested_skip_limits_in_from_expectedSql |
_intersect_with_split_limit_expectedSql | System.Data.Entity.Query .SqlGeneratorTests+SkipLimit ._intersect_with_split_limit_expectedSql |
_nested_projections_list_expectedSql | System.Data.Entity.Query .SqlGeneratorTests+SkipLimit ._nested_projections_list_expectedSql |
_anyelement_over_skip_limit_expectedSql | System.Data.Entity.Query .SqlGeneratorTests+SkipLimit ._anyelement_over_skip_limit_expectedSql |
_skip_with_no_limit_and_multiset_expecte dSql | System.Data.Entity.Query .SqlGeneratorTests+SkipLimit ._skip_with_no_limit_and_multiset_expect edSql |
_skip_limit_over_skip_limit_intersect_ex pectedSql | System.Data.Entity.Query .SqlGeneratorTests+SkipLimit ._skip_limit_over_skip_limit_intersect_e xpectedSql |
_skip_limit_with_duplicates_expectedSql | System.Data.Entity.Query .SqlGeneratorTests+SkipLimit ._skip_limit_with_duplicates_expectedSql |
_orderBy_ThenBy_Skip_lifted_above_filter _with_clr_null_semantics_expectedSql | System.Data.Entity.Query.LinqToEntities .OrderByLiftingTests ._orderBy_ThenBy_Skip_lifted_above_filte r_with_clr_null_semantics_expectedSql |
_orderBy_ThenBy_Skip_lifted_above_filter _without_clr_null_semantics_expectedSql | System.Data.Entity.Query.LinqToEntities .OrderByLiftingTests ._orderBy_ThenBy_Skip_lifted_above_filte r_without_clr_null_semantics_expectedSql |
_orderBy_ThenBy_Skip_lifted_above_type_f ilter_expectedSql | System.Data.Entity.Query.LinqToEntities .OrderByLiftingTests ._orderBy_ThenBy_Skip_lifted_above_type_ filter_expectedSql |
_orderBy_ThenBy_Take_lifted_above_type_f ilter_expectedSql | System.Data.Entity.Query.LinqToEntities .OrderByLiftingTests ._orderBy_ThenBy_Take_lifted_above_type_ filter_expectedSql |
_orderBy_ThenBy_Skip_Take_lifted_above_t ype_filter_expectedSql | System.Data.Entity.Query.LinqToEntities .OrderByLiftingTests ._orderBy_ThenBy_Skip_Take_lifted_above_ type_filter_expectedSql |
_limit_SimpleModel_OrderBy_Skip_First_ex pectedSql | PlanCompilerTests.LimitExpressionTests ._limit_SimpleModel_OrderBy_Skip_First_e xpectedSql |
_limit_SimpleModel_OrderBy_Skip_FirstOrD efault_expectedSql | PlanCompilerTests.LimitExpressionTests ._limit_SimpleModel_OrderBy_Skip_FirstOr Default_expectedSql |
_limit_SimpleModel_OrderBy_Skip_Single_e xpectedSql | PlanCompilerTests.LimitExpressionTests ._limit_SimpleModel_OrderBy_Skip_Single_ expectedSql |
_limit_SimpleModel_OrderBy_Skip_SingleOr Default_expectedSql | PlanCompilerTests.LimitExpressionTests ._limit_SimpleModel_OrderBy_Skip_SingleO rDefault_expectedSql |
_limit_SimpleModel_OrderBy_Skip_Take_exp ectedSql | PlanCompilerTests.LimitExpressionTests ._limit_SimpleModel_OrderBy_Skip_Take_ex pectedSql |
_limit_ComplexModel_OrderBy_Skip_First_e xpectedSql | PlanCompilerTests.LimitExpressionTests ._limit_ComplexModel_OrderBy_Skip_First_ expectedSql |
_limit_ComplexModel_OrderBy_Skip_FirstOr Default_expectedSql | PlanCompilerTests.LimitExpressionTests ._limit_ComplexModel_OrderBy_Skip_FirstO rDefault_expectedSql |
_limit_ComplexModel_OrderBy_Skip_Single_ expectedSql | PlanCompilerTests.LimitExpressionTests ._limit_ComplexModel_OrderBy_Skip_Single _expectedSql |
_limit_ComplexModel_OrderBy_Skip_SingleO rDefault_expectedSql | PlanCompilerTests.LimitExpressionTests ._limit_ComplexModel_OrderBy_Skip_Single OrDefault_expectedSql |
_limit_ComplexModel_OrderBy_Skip_Take_ex pectedSql | PlanCompilerTests.LimitExpressionTests ._limit_ComplexModel_OrderBy_Skip_Take_e xpectedSql |
StringLengthAttribute_ValidationError | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .ValidationTests .StringLengthAttribute_ValidationError |
StringLengthAttribute_ValidationErrorInc ludingMinimum | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .ValidationTests .StringLengthAttribute_ValidationErrorIn cludingMinimum |
StringLengthAttribute_ValidationError | System.Data.Entity.Validation .ValidationAttributeValidatorTests .StringLengthAttribute_ValidationError |
Statistics
Stat |
---|
Sum: |
Average: |
Minimum: |
Maximum: |
Standard deviation: |
Variance: |
![]() | Critical Rule warning: Avoid having different types with same name |
// Such practice typically creates confusion,
// and type naming collision inside a source file.
warnif count > 0
// This rule matches also collisions between
// application and third-party types sharing a same name.
let groups = JustMyCode.Types.Union(ThirdParty.Types)
// Discard nested types, whose name is
// prefixed with the parent type name.
.Where(t => !t.IsNested)
// Group types by name.
.GroupBy(t => t.Name)
from @group in groups
where @group.Count() > 1
// Let's see if types with the same name are declared
// in different namespaces.
// (t.FullName is {namespaceName}.{typeName} )
let groupsFullName = @group.GroupBy(t => t.FullName)
where groupsFullName.Count() > 1
// If several types with same name are declared in different namespaces
// eliminate the case where all types are declared in third-party assemblies.
let types= groupsFullName.SelectMany(g => g)
where types.Any(t => !t.IsThirdParty)
// Uncomment this line, to only gets naming collision involving
// both application and third-party types.
// && types.Any(t => t.IsThirdParty)
orderby types.Count() descending
select new { t = types.First(),
// In the 'types' column, make sure to group matched types
// by parent assemblies and parent namespaces, to get a result
// more readable.
types
}View Code Query or Rule BodyView Code Query or Rule Body
137 types matched
types | types | Full Name |
---|---|---|
CardSuite | 9 types | System.Data.Entity.Core.Common .CommandTrees.CardSuite |
MockHelper | 7 types | System.Data.Entity.Validation.MockHelper |
A | 5 types | FunctionalTests.BugDevDiv_178590.A |
B | 5 types | FunctionalTests.BugDevDiv_178590.B |
C | 5 types | FunctionalTests.BugDevDiv_178590.C |
ComplexType | 4 types | System.Data.Entity.Migrations .OSpaceRenames_v1.ComplexType |
Dependent | 4 types | FunctionalTests.Bug175804.Dependent |
SqlGeneratorTests | 4 types | System.Data.Entity.SqlServerCompact .SqlGeneratorTests |
User | 3 types | System.Data.Entity.Migrations .UserRoles_v1.User |
Principal | 3 types | FunctionalTests.Bug175804.Principal |
Address | 3 types | FunctionalTests.Model.Address |
Employee | 3 types | FunctionalTests.Model.Employee |
EnumTests | 3 types | System.Data.Entity.Query.LinqToEntities .EnumTests |
IncludeTests | 3 types | System.Data.Entity.Query.LinqToEntities .IncludeTests |
City | 3 types | System.Data.Entity.TestModels .ProviderAgnosticModel.City |
Order | 2 types | System.Data.Entity.Migrations.Order |
Role | 2 types | System.Data.Entity.Migrations .UserRoles_v1.Role |
TableRenameManyManyRight | 2 types | System.Data.Entity.Migrations .OSpaceRenames_v1 .TableRenameManyManyRight |
ColumnRenameDerived | 2 types | System.Data.Entity.Migrations .OSpaceRenames_v1.ColumnRenameDerived |
IaParent | 2 types | System.Data.Entity.Migrations .OSpaceRenames_v1.IaParent |
OrphanedColumnParent | 2 types | System.Data.Entity.Migrations .OSpaceRenames_v1.OrphanedColumnParent |
ConfigurationScenarioTests | 2 types | FunctionalTests .ConfigurationScenarioTests |
FunctionsScenarioTests | 2 types | FunctionalTests.FunctionsScenarioTests |
InheritanceScenarioTests | 2 types | FunctionalTests.InheritanceScenarioTests |
ITEmployee | 2 types | FunctionalTests.Bug223284A.ITEmployee |
Product | 2 types | FunctionalTests.Model.Product |
Customer | 2 types | FunctionalTests.Model.Customer |
Location | 2 types | FunctionalTests.Model.Location |
ProductModel | 2 types | FunctionalTests.Model.ProductModel |
Store | 2 types | FunctionalTests.Model.Store |
WorkOrder | 2 types | FunctionalTests.Model.WorkOrder |
Blog | 2 types | SimpleModel.Blog |
ArubaBugResolution | 2 types | System.Data.Entity.TestModels .ProviderAgnosticModel .ArubaBugResolution |
Task | 2 types | System.Data.Entity.TestModels .ProviderAgnosticModel.Task |
CogTag | 2 types | System.Data.Entity.TestModels .ProviderAgnosticModel.CogTag |
Gear | 2 types | System.Data.Entity.TestModels .ProviderAgnosticModel.Gear |
Weapon | 2 types | System.Data.Entity.TestModels .ProviderAgnosticModel.Weapon |
HeavyWeapon | 2 types | System.Data.Entity.TestModels .ProviderAgnosticModel.HeavyWeapon |
MilitaryRank | 2 types | System.Data.Entity.TestModels .ProviderAgnosticModel.MilitaryRank |
Squad | 2 types | System.Data.Entity.TestModels .ProviderAgnosticModel.Squad |
StandardWeapon | 2 types | System.Data.Entity.TestModels .ProviderAgnosticModel.StandardWeapon |
WeaponSpecification | 2 types | System.Data.Entity.TestModels .ProviderAgnosticModel .WeaponSpecification |
DatabaseLogFormatterTests | 2 types | System.Data.Entity.Interception .DatabaseLogFormatterTests |
DatabaseLoggerTests | 2 types | System.Data.Entity.Interception .DatabaseLoggerTests |
MetadataCollectionTests | 2 types | System.Data.Entity.Metadata .MetadataCollectionTests |
TransactionContext | 2 types | System.Data.Entity.Objects .TransactionContext |
SpatialTests | 2 types | System.Data.Entity.Query.SpatialTests |
Building | 2 types | System.Data.Entity.TestModels .FantasyModel.Building |
DbContextTests | 2 types | ProductivityApiTests.DbContextTests |
TemplateTests | 2 types | ProductivityApiTests.TemplateTests |
DbConfigurationTests | 2 types | ProductivityApiTests .DbConfigurationTests |
ComplexTypeTests | 2 types | ProductivityApiTests.ComplexTypeTests |
DatabaseTests | 2 types | ProductivityApiTests.DatabaseTests |
DatabindingTests | 2 types | ProductivityApiTests.DatabindingTests |
DbConnectionFactoryTests | 2 types | ProductivityApiTests .DbConnectionFactoryTests |
DbEntityEntryTests | 2 types | ProductivityApiTests.DbEntityEntryTests |
DbPropertyValuesTests | 2 types | ProductivityApiTests .DbPropertyValuesTests |
DbSetTests | 2 types | ProductivityApiTests.DbSetTests |
DbSqlQueryTests | 2 types | ProductivityApiTests.DbSqlQueryTests |
MultiThreadingTests | 2 types | ProductivityApiTests.MultiThreadingTests |
WriteEdmxTests | 2 types | ProductivityApiTests.WriteEdmxTests |
AdvancedPatternsModelFirstInitializer | 2 types | FunctionalTests.ProductivityApi .TemplateModels.CsAdvancedPatterns .AdvancedPatternsModelFirstInitializer |
AddressMf | 2 types | FunctionalTests.ProductivityApi .TemplateModels.CsAdvancedPatterns .AddressMf |
BuildingDetailMf | 2 types | FunctionalTests.ProductivityApi .TemplateModels.CsAdvancedPatterns .BuildingDetailMf |
BuildingMf | 2 types | FunctionalTests.ProductivityApi .TemplateModels.CsAdvancedPatterns .BuildingMf |
AdvancedPatternsModelFirstContext | 2 types | FunctionalTests.ProductivityApi .TemplateModels.CsAdvancedPatterns .AdvancedPatternsModelFirstContext |
EmployeeMf | 2 types | FunctionalTests.ProductivityApi .TemplateModels.CsAdvancedPatterns .EmployeeMf |
CurrentEmployeeMf | 2 types | FunctionalTests.ProductivityApi .TemplateModels.CsAdvancedPatterns .CurrentEmployeeMf |
MailRoomMf | 2 types | FunctionalTests.ProductivityApi .TemplateModels.CsAdvancedPatterns .MailRoomMf |
OfficeMf | 2 types | FunctionalTests.ProductivityApi .TemplateModels.CsAdvancedPatterns .OfficeMf |
PastEmployeeMf | 2 types | FunctionalTests.ProductivityApi .TemplateModels.CsAdvancedPatterns .PastEmployeeMf |
SiteInfoMf | 2 types | FunctionalTests.ProductivityApi .TemplateModels.CsAdvancedPatterns .SiteInfoMf |
WhiteboardMf | 2 types | FunctionalTests.ProductivityApi .TemplateModels.CsAdvancedPatterns .WhiteboardMf |
WorkOrderMf | 2 types | FunctionalTests.ProductivityApi .TemplateModels.CsAdvancedPatterns .WorkOrderMf |
OrderLineMm | 2 types | FunctionalTests.ProductivityApi .TemplateModels.CsMonsterModel .OrderLineMm |
BackOrderLineMm | 2 types | FunctionalTests.ProductivityApi .TemplateModels.CsMonsterModel .BackOrderLineMm |
BackOrderLine2Mm | 2 types | FunctionalTests.ProductivityApi .TemplateModels.CsMonsterModel .BackOrderLine2Mm |
BarcodeDetailMm | 2 types | FunctionalTests.ProductivityApi .TemplateModels.CsMonsterModel .BarcodeDetailMm |
BarcodeMm | 2 types | FunctionalTests.ProductivityApi .TemplateModels.CsMonsterModel.BarcodeMm |
ComplaintMm | 2 types | FunctionalTests.ProductivityApi .TemplateModels.CsMonsterModel .ComplaintMm |
ComputerDetailMm | 2 types | FunctionalTests.ProductivityApi .TemplateModels.CsMonsterModel .ComputerDetailMm |
ComputerMm | 2 types | FunctionalTests.ProductivityApi .TemplateModels.CsMonsterModel .ComputerMm |
ConcurrencyInfoMm | 2 types | FunctionalTests.ProductivityApi .TemplateModels.CsMonsterModel .ConcurrencyInfoMm |
ContactDetailsMm | 2 types | FunctionalTests.ProductivityApi .TemplateModels.CsMonsterModel .ContactDetailsMm |
MonsterModel | 2 types | FunctionalTests.ProductivityApi .TemplateModels.CsMonsterModel .MonsterModel |
CustomerInfoMm | 2 types | FunctionalTests.ProductivityApi .TemplateModels.CsMonsterModel .CustomerInfoMm |
DimensionsMm | 2 types | FunctionalTests.ProductivityApi .TemplateModels.CsMonsterModel .DimensionsMm |
ProductMm | 2 types | FunctionalTests.ProductivityApi .TemplateModels.CsMonsterModel.ProductMm |
DiscontinuedProductMm | 2 types | FunctionalTests.ProductivityApi .TemplateModels.CsMonsterModel .DiscontinuedProductMm |
DriverMm | 2 types | FunctionalTests.ProductivityApi .TemplateModels.CsMonsterModel.DriverMm |
IncorrectScanMm | 2 types | FunctionalTests.ProductivityApi .TemplateModels.CsMonsterModel .IncorrectScanMm |
LastLoginMm | 2 types | FunctionalTests.ProductivityApi .TemplateModels.CsMonsterModel .LastLoginMm |
LicenseMm | 2 types | FunctionalTests.ProductivityApi .TemplateModels.CsMonsterModel.LicenseMm |
MessageMm | 2 types | FunctionalTests.ProductivityApi .TemplateModels.CsMonsterModel.MessageMm |
OrderMm | 2 types | FunctionalTests.ProductivityApi .TemplateModels.CsMonsterModel.OrderMm |
OrderNoteMm | 2 types | FunctionalTests.ProductivityApi .TemplateModels.CsMonsterModel .OrderNoteMm |
OrderQualityCheckMm | 2 types | FunctionalTests.ProductivityApi .TemplateModels.CsMonsterModel .OrderQualityCheckMm |
PageViewMm | 2 types | FunctionalTests.ProductivityApi .TemplateModels.CsMonsterModel .PageViewMm |
PasswordResetMm | 2 types | FunctionalTests.ProductivityApi .TemplateModels.CsMonsterModel .PasswordResetMm |
ProductDetailMm | 2 types | FunctionalTests.ProductivityApi .TemplateModels.CsMonsterModel .ProductDetailMm |
Statistics
Stat | types |
---|---|
Sum: | 0 |
Average: | 0 |
Minimum: | 0 |
Maximum: | 0 |
Standard deviation: | 0 |
Variance: | 0 |
![]() | Rule warning: Avoid naming types and namespaces with the same identifier |
// Not only this can provoke compiler resolution collision,
// but also, this makes code less maintainable because
// concepts are not concisely identified.
warnif count > 0
let hashsetShortNames = Namespaces.Where(n => n.Name.Length > 0).Select(n => n.SimpleName).ToHashSet()
from t in JustMyCode.Types
where hashsetShortNames.Contains(t.Name)
select new { t, namespaces = Namespaces.Where(n => n.SimpleName == t.Name) }View Code Query or Rule BodyView Code Query or Rule Body
3 types matched
types | namespaces | Full Name |
---|---|---|
Principal | 1 namespace | FunctionalTests.Bug175804.Principal |
Principal | 1 namespace | System.Data.Entity.Migrations .Infrastructure.Renamed_ia_pk_v1 .Principal |
Principal | 1 namespace | System.Data.Entity.Migrations .Infrastructure.Renamed_ia_pk_v2 .Principal |
Statistics
Stat | namespaces |
---|---|
Sum: | 0 |
Average: | 0 |
Minimum: | 0 |
Maximum: | 0 |
Standard deviation: | 0 |
Variance: | 0 |
![]() | Rule warning: Methods prefixed with 'Try' should return a boolean |
// and such TryXXX method can eventually have out parameters to return results.
// Get inspired from the API design of:
// System.Int32.TryParse(int,out string):bool
warnif count > 0
from m in Application.Methods where
m.SimpleNameLike("^Try") &&
m.ReturnType != null &&
m.ReturnType.FullName != "System.Boolean"
select new { m, m.ReturnType }View Code Query or Rule BodyView Code Query or Rule Body
125 methods matched
methods | ReturnType | Full Name |
---|---|---|
TryGetCollation(IDictionary<String ,AnnotationValues>) | CollationAttribute | System.Data.Entity.TestHelpers .SqlServerMigrationSqlGeneratorWtihColla tions.TryGetCollation(IDictionary<String ,AnnotationValues>) |
TryGetElementType(Type,Type) | Type | System.Data.Entity.Functionals.Utilities .TypeExtensions.TryGetElementType(Type ,Type) |
TryGetElementType(PropertyInfo) | Type | System.Data.Entity.TestModels .ExtraLazyLoading .CachingCollectionInitializer .TryGetElementType(PropertyInfo) |
TryGetElementType(Type) | Type | System.Data.Entity.TestDoubles .InMemoryAsyncQueryProvider .TryGetElementType(Type) |
TryGetElementType(Type,Type) | Type | System.Data.Entity.Functionals.Utilities .TypeExtensions.TryGetElementType(Type ,Type) |
TryGetModelHash_returns_null_when_used_w ith_DbContext_created_from_existing_Obje ctContext() | Void | CodeFirstTest.DbModelTests .TryGetModelHash_returns_null_when_used_ with_DbContext_created_from_existing_Obj ectContext() |
TryGetModelHash_returns_null_when_used_w ith_Model_First_DbContext() | Void | CodeFirstTest.DbModelTests .TryGetModelHash_returns_null_when_used_ with_Model_First_DbContext() |
TryGetObjectQuery_returns_null_when_give n_null() | Void | System.Data.Entity .QueryableExtensionsTests+TryGetObjectQu ery .TryGetObjectQuery_returns_null_when_giv en_null() |
TryGetObjectQuery_returns_null_when_give n_queryable_that_is_not_DbQuery_or_Objec tQuery() | Void | System.Data.Entity .QueryableExtensionsTests+TryGetObjectQu ery .TryGetObjectQuery_returns_null_when_giv en_queryable_that_is_not_DbQuery_or_Obje ctQuery() |
TryGetObjectQuery_returns_ObjectQuery_wh en_given_generic_ObjectQuery() | Void | System.Data.Entity .QueryableExtensionsTests+TryGetObjectQu ery .TryGetObjectQuery_returns_ObjectQuery_w hen_given_generic_ObjectQuery() |
TryGetObjectQuery_returns_ObjectQuery_wh en_given_non_generic_ObjectQuery() | Void | System.Data.Entity .QueryableExtensionsTests+TryGetObjectQu ery .TryGetObjectQuery_returns_ObjectQuery_w hen_given_non_generic_ObjectQuery() |
TryGetObjectQuery_returns_ObjectQuery_wh en_given_generic_DbQuery() | Void | System.Data.Entity .QueryableExtensionsTests+TryGetObjectQu ery .TryGetObjectQuery_returns_ObjectQuery_w hen_given_generic_DbQuery() |
TryGetObjectQuery_returns_ObjectQuery_wh en_given_non_generic_DbQuery() | Void | System.Data.Entity .QueryableExtensionsTests+TryGetObjectQu ery .TryGetObjectQuery_returns_ObjectQuery_w hen_given_non_generic_DbQuery() |
TryGetModelHash_throws_when_given_null_c ontext() | Void | System.Data.Entity .DatabaseInitializerTests .TryGetModelHash_throws_when_given_null_ context() |
TryRemoveReference_finds_and_removes_onl y_given_strongly_named_assembly_referenc e() | Void | System.Data.Entity .ConnectionFactoryConfig .ReferenceRemoverTests .TryRemoveReference_finds_and_removes_on ly_given_strongly_named_assembly_referen ce() |
TryRemoveReference_is_resilient_to_non_V S_projects() | Void | System.Data.Entity .ConnectionFactoryConfig .ReferenceRemoverTests .TryRemoveReference_is_resilient_to_non_ VS_projects() |
TryRemoveReference_is_resilient_to_non_r eferences_in_the_reference_collection() | Void | System.Data.Entity .ConnectionFactoryConfig .ReferenceRemoverTests .TryRemoveReference_is_resilient_to_non_ references_in_the_reference_collection() |
TryRemoveSystemDataEntity_finds_and_remo ves_System_Data_Entity() | Void | System.Data.Entity .ConnectionFactoryConfig .ReferenceRemoverTests .TryRemoveSystemDataEntity_finds_and_rem oves_System_Data_Entity() |
TryGetElementType_returns_element_type_f or_given_interface() | Void | System.Data.Entity.Utilities .TypeExtensionsTests+TryGetElementType .TryGetElementType_returns_element_type_ for_given_interface() |
TryGetElementType_returns_element_type_f or_given_class() | Void | System.Data.Entity.Utilities .TypeExtensionsTests+TryGetElementType .TryGetElementType_returns_element_type_ for_given_class() |
TryGetElementType_returns_null_if_type_i s_generic_type_definition() | Void | System.Data.Entity.Utilities .TypeExtensionsTests+TryGetElementType .TryGetElementType_returns_null_if_type_ is_generic_type_definition() |
TryGetElementType_returns_null_if_type_d oesnt_implement_interface() | Void | System.Data.Entity.Utilities .TypeExtensionsTests+TryGetElementType .TryGetElementType_returns_null_if_type_ doesnt_implement_interface() |
TryGetElementType_returns_null_if_type_d oesnt_implement_class() | Void | System.Data.Entity.Utilities .TypeExtensionsTests+TryGetElementType .TryGetElementType_returns_null_if_type_ doesnt_implement_class() |
TryGetElementType_returns_null_when_ICol lection_implemented_more_than_once() | Void | System.Data.Entity.Utilities .TypeExtensionsTests+TryGetElementType .TryGetElementType_returns_null_when_ICo llection_implemented_more_than_once() |
TryGetAnonymousTypeValues_reads_values_f rom_types_that_look_anonymous() | Void | System.Data.Entity.Core.Common .CommandTrees.DbExpressionBuilderTests .TryGetAnonymousTypeValues_reads_values_ from_types_that_look_anonymous() |
TryGetAnonymousTypeValues_reads_values_f rom_types_that_look_anonymous_but_have_s tatic_properties() | Void | System.Data.Entity.Core.Common .CommandTrees.DbExpressionBuilderTests .TryGetAnonymousTypeValues_reads_values_ from_types_that_look_anonymous_but_have_ static_properties() |
TryGetAnonymousTypeValues_returns_null_f or_non_anonymous_looking_types() | Void | System.Data.Entity.Core.Common .CommandTrees.DbExpressionBuilderTests .TryGetAnonymousTypeValues_returns_null_ for_non_anonymous_looking_types() |
TryGetValue_throws_for_null_argument() | Void | System.Data.Entity.Core.EntityClient .EntityConnectionStringBuilderTests .TryGetValue_throws_for_null_argument() |
TryGetValue_returns_false_if_identity_no t_found() | Void | System.Data.Entity.Core.Metadata.Edm .MetadataCollectionTests .TryGetValue_returns_false_if_identity_n ot_found() |
TryResolveType_throws_for_null_type_argu ment() | Void | System.Data.Entity.Core.Objects .ProxyDataContractResolverTests .TryResolveType_throws_for_null_type_arg ument() |
TryResolveType_throws_for_null_declaredT ype_argument() | Void | System.Data.Entity.Core.Objects .ProxyDataContractResolverTests .TryResolveType_throws_for_null_declared Type_argument() |
TryResolveType_throws_for_null_knownType Resolver_argument() | Void | System.Data.Entity.Core.Objects .ProxyDataContractResolverTests .TryResolveType_throws_for_null_knownTyp eResolver_argument() |
TryGetAssociationTypeFromProxyInfo_can_g et_association_using_simple_name() | Void | System.Data.Entity.Core.Objects.Internal .EntityProxyFactoryTests+TryGetAssociati onTypeFromProxyInfo .TryGetAssociationTypeFromProxyInfo_can_ get_association_using_simple_name() |
TryGetAssociationTypeFromProxyInfo_can_g et_association_using_full_name() | Void | System.Data.Entity.Core.Objects.Internal .EntityProxyFactoryTests+TryGetAssociati onTypeFromProxyInfo .TryGetAssociationTypeFromProxyInfo_can_ get_association_using_full_name() |
TryGetAllAssociationTypesFromProxyInfo_r eturns_all_associations_with_no_duplicat es() | Void | System.Data.Entity.Core.Objects.Internal .EntityProxyFactoryTests+TryGetAllAssoci ationTypesFromProxyInfo .TryGetAllAssociationTypesFromProxyInfo_ returns_all_associations_with_no_duplica tes() |
TryFindConfigurationType_returns_the_con figuration_pointed_to_by_the_DbConfigura tionTypeAttribute_if_found() | Void | System.Data.Entity.Infrastructure .DependencyResolution .DbConfigurationFinderTests+TryFindConfi gurationType .TryFindConfigurationType_returns_the_co nfiguration_pointed_to_by_the_DbConfigur ationTypeAttribute_if_found() |
TryFindConfigurationType_throws_if_the_t ype_returned_by_DbConfigurationTypeAttri bute_is_not_a_DbConfiguration() | Void | System.Data.Entity.Infrastructure .DependencyResolution .DbConfigurationFinderTests+TryFindConfi gurationType .TryFindConfigurationType_throws_if_the_ type_returned_by_DbConfigurationTypeAttr ibute_is_not_a_DbConfiguration() |
TryFindConfigurationType_throws_if_types _list_contains_more_than_one_normal_DbCo nfigurations() | Void | System.Data.Entity.Infrastructure .DependencyResolution .DbConfigurationFinderTests+TryFindConfi gurationType .TryFindConfigurationType_throws_if_type s_list_contains_more_than_one_normal_DbC onfigurations() |
TryFindConfigurationType_returns_the_nor mal_DbConfiguration_if_found() | Void | System.Data.Entity.Infrastructure .DependencyResolution .DbConfigurationFinderTests+TryFindConfi gurationType .TryFindConfigurationType_returns_the_no rmal_DbConfiguration_if_found() |
TryFindConfigurationType_returns_the_nor mal_DbConfiguration_from_the_assembly_if _found() | Void | System.Data.Entity.Infrastructure .DependencyResolution .DbConfigurationFinderTests+TryFindConfi gurationType .TryFindConfigurationType_returns_the_no rmal_DbConfiguration_from_the_assembly_i f_found() |
TryFindConfigurationType_returns_null_if _no_DbConfiguration_is_found() | Void | System.Data.Entity.Infrastructure .DependencyResolution .DbConfigurationFinderTests+TryFindConfi gurationType .TryFindConfigurationType_returns_null_i f_no_DbConfiguration_is_found() |
TryFindConfigurationType_excludes_generi c_types() | Void | System.Data.Entity.Infrastructure .DependencyResolution .DbConfigurationFinderTests+TryFindConfi gurationType .TryFindConfigurationType_excludes_gener ic_types() |
TryFindConfigurationType_excludes_abstra ct_types() | Void | System.Data.Entity.Infrastructure .DependencyResolution .DbConfigurationFinderTests+TryFindConfi gurationType .TryFindConfigurationType_excludes_abstr act_types() |
TryFindContextType_returns_the_given_con text_type_if_non_null() | Void | System.Data.Entity.Infrastructure .DependencyResolution .DbConfigurationFinderTests+TryFindConte xtType .TryFindContextType_returns_the_given_co ntext_type_if_non_null() |
TryFindContextType_returns_the_found_typ e_if_one_context_with_a_configuration_at tribute_is_found() | Void | System.Data.Entity.Infrastructure .DependencyResolution .DbConfigurationFinderTests+TryFindConte xtType .TryFindContextType_returns_the_found_ty pe_if_one_context_with_a_configuration_a ttribute_is_found() |
TryFindContextType_returns_null_if_no_co ntext_with_a_configuration_attribute_is_ found() | Void | System.Data.Entity.Infrastructure .DependencyResolution .DbConfigurationFinderTests+TryFindConte xtType .TryFindContextType_returns_null_if_no_c ontext_with_a_configuration_attribute_is _found() |
TryFindContextType_returns_null_if_more_ than_one_context_with_a_configuration_at tribute_is_found() | Void | System.Data.Entity.Infrastructure .DependencyResolution .DbConfigurationFinderTests+TryFindConte xtType .TryFindContextType_returns_null_if_more _than_one_context_with_a_configuration_a ttribute_is_found() |
TryLoadFromConfig_returns_null_if_config _element_is_missing_or_empty() | Void | System.Data.Entity.Infrastructure .DependencyResolution .DbConfigurationLoaderTests .TryLoadFromConfig_returns_null_if_confi g_element_is_missing_or_empty() |
TryLoadFromConfig_returns_correct_DbConf iguration_type() | Void | System.Data.Entity.Infrastructure .DependencyResolution .DbConfigurationLoaderTests .TryLoadFromConfig_returns_correct_DbCon figuration_type() |
TryLoadFromConfig_throws_if_type_cannot_ be_loaded() | Void | System.Data.Entity.Infrastructure .DependencyResolution .DbConfigurationLoaderTests .TryLoadFromConfig_throws_if_type_cannot _be_loaded() |
TryLoadFromConfig_throws_if_type_does_no t_extend_DbConfiguration() | Void | System.Data.Entity.Infrastructure .DependencyResolution .DbConfigurationLoaderTests .TryLoadFromConfig_throws_if_type_does_n ot_extend_DbConfiguration() |
TryGetInstance_can_return_SqlProviderSer vices() | Void | System.Data.Entity.Infrastructure .DependencyResolution .ProviderServicesFactoryTests+TryGetInst ance .TryGetInstance_can_return_SqlProviderSe rvices() |
TryGetInstance_returns_null_if_type_cann ot_be_loaded() | Void | System.Data.Entity.Infrastructure .DependencyResolution .ProviderServicesFactoryTests+TryGetInst ance .TryGetInstance_returns_null_if_type_can not_be_loaded() |
TryGuessPrincipalAndDependentEnds_should _return_correct_ends_for_optional_to_man y() | Void | System.Data.Entity.ModelConfiguration .Edm.AssociationTypeExtensionsTests .TryGuessPrincipalAndDependentEnds_shoul d_return_correct_ends_for_optional_to_ma ny() |
TryGuessPrincipalAndDependentEnds_should _return_correct_ends_for_required_to_man y() | Void | System.Data.Entity.ModelConfiguration .Edm.AssociationTypeExtensionsTests .TryGuessPrincipalAndDependentEnds_shoul d_return_correct_ends_for_required_to_ma ny() |
TryGuessPrincipalAndDependentEnds_should _return_correct_ends_for_many_to_optiona l() | Void | System.Data.Entity.ModelConfiguration .Edm.AssociationTypeExtensionsTests .TryGuessPrincipalAndDependentEnds_shoul d_return_correct_ends_for_many_to_option al() |
TryGuessPrincipalAndDependentEnds_should _return_correct_ends_for_many_to_require d() | Void | System.Data.Entity.ModelConfiguration .Edm.AssociationTypeExtensionsTests .TryGuessPrincipalAndDependentEnds_shoul d_return_correct_ends_for_many_to_requir ed() |
TryGuessPrincipalAndDependentEnds_should _return_correct_ends_for_required_to_opt ional() | Void | System.Data.Entity.ModelConfiguration .Edm.AssociationTypeExtensionsTests .TryGuessPrincipalAndDependentEnds_shoul d_return_correct_ends_for_required_to_op tional() |
TryGuessPrincipalAndDependentEnds_should _return_correct_ends_for_optional_to_req uired() | Void | System.Data.Entity.ModelConfiguration .Edm.AssociationTypeExtensionsTests .TryGuessPrincipalAndDependentEnds_shoul d_return_correct_ends_for_optional_to_re quired() |
TryGetInitializer_returns_null_when_no_i nitializer_is_registered_for_context() | Void | System.Data.Entity.Internal .InitializerConfigTests .TryGetInitializer_returns_null_when_no_ initializer_is_registered_for_context() |
TryGetInitializer_returns_null_when_cont ext_section_exists_but_no_initializer_is _registered() | Void | System.Data.Entity.Internal .InitializerConfigTests .TryGetInitializer_returns_null_when_con text_section_exists_but_no_initializer_i s_registered() |
TryGetInitializer_returns_NullInitialize r_when_initializer_is_disabled_in_contex t_section() | Void | System.Data.Entity.Internal .InitializerConfigTests .TryGetInitializer_returns_NullInitializ er_when_initializer_is_disabled_in_conte xt_section() |
TryGetInitializer_returns_initializer_re gistered_in_config_section() | Void | System.Data.Entity.Internal .InitializerConfigTests .TryGetInitializer_returns_initializer_r egistered_in_config_section() |
TryGetInitializer_returns_initializer_cr eated_with_given_parameters_when_registe red_in_config_section() | Void | System.Data.Entity.Internal .InitializerConfigTests .TryGetInitializer_returns_initializer_c reated_with_given_parameters_when_regist ered_in_config_section() |
TryGetInitializer_returns_NullInitialize r_when_initializer_is_disabled_in_app_se ttings_section() | Void | System.Data.Entity.Internal .InitializerConfigTests .TryGetInitializer_returns_NullInitializ er_when_initializer_is_disabled_in_app_s ettings_section() |
TryGetInitializer_returns_NullInitialize r_when_initializer_is_disabled_with_empt y_string_in_app_settings_section() | Void | System.Data.Entity.Internal .InitializerConfigTests .TryGetInitializer_returns_NullInitializ er_when_initializer_is_disabled_with_emp ty_string_in_app_settings_section() |
TryGetInitializer_returns_initializer_re gistered_in_app_settings_section() | Void | System.Data.Entity.Internal .InitializerConfigTests .TryGetInitializer_returns_initializer_r egistered_in_app_settings_section() |
TryGetInitializer_returns_initializer_se t_in_context_section_in_preference_to_ap p_settings_section() | Void | System.Data.Entity.Internal .InitializerConfigTests .TryGetInitializer_returns_initializer_s et_in_context_section_in_preference_to_a pp_settings_section() |
TryGetInitializer_throws_if_bad_context_ type_is_registered_in_context_section() | Void | System.Data.Entity.Internal .InitializerConfigTests .TryGetInitializer_throws_if_bad_context _type_is_registered_in_context_section() |
TryGetInitializer_throws_if_bad_context_ type_for_disabled_initializer_is_registe red_in_context_section() | Void | System.Data.Entity.Internal .InitializerConfigTests .TryGetInitializer_throws_if_bad_context _type_for_disabled_initializer_is_regist ered_in_context_section() |
TryGetInitializer_throws_if_bad_initiali zer_type_is_registered_in_context_sectio n() | Void | System.Data.Entity.Internal .InitializerConfigTests .TryGetInitializer_throws_if_bad_initial izer_type_is_registered_in_context_secti on() |
TryGetInitializer_throws_if_bad_context_ type_is_registered_in_app_settings_secti on() | Void | System.Data.Entity.Internal .InitializerConfigTests .TryGetInitializer_throws_if_bad_context _type_is_registered_in_app_settings_sect ion() |
TryGetInitializer_throws_if_bad_context_ type_for_disabled_initializer_is_registe red_in_app_settings_section() | Void | System.Data.Entity.Internal .InitializerConfigTests .TryGetInitializer_throws_if_bad_context _type_for_disabled_initializer_is_regist ered_in_app_settings_section() |
TryGetInitializer_throws_if_bad_context_ type_for_disabled_initializer_by_empty_s tring_is_registered_in_app_settings_sect ion() | Void | System.Data.Entity.Internal .InitializerConfigTests .TryGetInitializer_throws_if_bad_context _type_for_disabled_initializer_by_empty_ string_is_registered_in_app_settings_sec tion() |
TryGetInitializer_throws_if_bad_initiali zer_type_is_registered_in_app_settings_s ection() | Void | System.Data.Entity.Internal .InitializerConfigTests .TryGetInitializer_throws_if_bad_initial izer_type_is_registered_in_app_settings_ section() |
TryGetInitializer_throws_if_null_or_empt y_context_type_is_registered_in_app_sett ings_section() | Void | System.Data.Entity.Internal .InitializerConfigTests .TryGetInitializer_throws_if_null_or_emp ty_context_type_is_registered_in_app_set tings_section() |
TryGetDefaultConnectionFactory_returns_n ull_if_no_factory_is_in_app_config() | Void | System.Data.Entity.Internal .AppConfigTests+GetDefaultConnectionFact ory .TryGetDefaultConnectionFactory_returns_ null_if_no_factory_is_in_app_config() |
TryGetDefaultConnectionFactory_returns_n ull_if_no_factory_is_in_Configuration_ct or() | Void | System.Data.Entity.Internal .AppConfigTests+GetDefaultConnectionFact ory .TryGetDefaultConnectionFactory_returns_ null_if_no_factory_is_in_Configuration_c tor() |
TryGetDefaultConnectionFactory_returns_n ull_when_ConnectionStringSettingsCollect ion_ctor_is_used() | Void | System.Data.Entity.Internal .AppConfigTests+GetDefaultConnectionFact ory .TryGetDefaultConnectionFactory_returns_ null_when_ConnectionStringSettingsCollec tion_ctor_is_used() |
TryGetDefaultConnectionFactory_throws_if _factory_name_in_config_is_empty() | Void | System.Data.Entity.Internal .AppConfigTests+GetDefaultConnectionFact ory .TryGetDefaultConnectionFactory_throws_i f_factory_name_in_config_is_empty() |
TryGetDefaultConnectionFactory_throws_if _factory_name_in_config_is_whitespace() | Void | System.Data.Entity.Internal .AppConfigTests+GetDefaultConnectionFact ory .TryGetDefaultConnectionFactory_throws_i f_factory_name_in_config_is_whitespace() |
TryGetDefaultConnectionFactory_can_creat e_instance_of_specified_connection_facto ry_with_no_arguments() | Void | System.Data.Entity.Internal .AppConfigTests+GetDefaultConnectionFact ory .TryGetDefaultConnectionFactory_can_crea te_instance_of_specified_connection_fact ory_with_no_arguments() |
TryGetDefaultConnectionFactory_can_creat e_instance_of_specified_connection_facto ry_with_one_argument() | Void | System.Data.Entity.Internal .AppConfigTests+GetDefaultConnectionFact ory .TryGetDefaultConnectionFactory_can_crea te_instance_of_specified_connection_fact ory_with_one_argument() |
TryGetDefaultConnectionFactory_can_creat e_instance_of_specified_connection_facto ry_with_multiple_arguments() | Void | System.Data.Entity.Internal .AppConfigTests+GetDefaultConnectionFact ory .TryGetDefaultConnectionFactory_can_crea te_instance_of_specified_connection_fact ory_with_multiple_arguments() |
TryGetDefaultConnectionFactory_can_handl e_empty_string_arguments() | Void | System.Data.Entity.Internal .AppConfigTests+GetDefaultConnectionFact ory .TryGetDefaultConnectionFactory_can_hand le_empty_string_arguments() |
TryGetDefaultConnectionFactory_throws_if _factory_type_cannot_be_found() | Void | System.Data.Entity.Internal .AppConfigTests+GetDefaultConnectionFact ory .TryGetDefaultConnectionFactory_throws_i f_factory_type_cannot_be_found() |
TryGetDefaultConnectionFactory_throws_if _empty_constructor_is_required_but_not_a vailable() | Void | System.Data.Entity.Internal .AppConfigTests+GetDefaultConnectionFact ory .TryGetDefaultConnectionFactory_throws_i f_empty_constructor_is_required_but_not_ available() |
TryGetDefaultConnectionFactory_throws_if _constructor_with_parameters_is_required _but_not_available() | Void | System.Data.Entity.Internal .AppConfigTests+GetDefaultConnectionFact ory .TryGetDefaultConnectionFactory_throws_i f_constructor_with_parameters_is_require d_but_not_available() |
TryGetDefaultConnectionFactory_throws_if _factory_type_does_not_implement_IDbConn ectionFactory() | Void | System.Data.Entity.Internal .AppConfigTests+GetDefaultConnectionFact ory .TryGetDefaultConnectionFactory_throws_i f_factory_type_does_not_implement_IDbCon nectionFactory() |
TryGetDefaultConnectionFactory_throws_if _factory_type_is_Abstract() | Void | System.Data.Entity.Internal .AppConfigTests+GetDefaultConnectionFact ory .TryGetDefaultConnectionFactory_throws_i f_factory_type_is_Abstract() |
TryGetDefaultConnectionFactory_can_be_us ed_to_create_instance_of_SqlConnectionFa ctory() | Void | System.Data.Entity.Internal .AppConfigTests+GetDefaultConnectionFact ory .TryGetDefaultConnectionFactory_can_be_u sed_to_create_instance_of_SqlConnectionF actory() |
TryGetDefaultConnectionFactory_can_be_us ed_to_create_instance_of_SqlCEConnection Factory_with_just_provider_invariant_nam e() | Void | System.Data.Entity.Internal .AppConfigTests+GetDefaultConnectionFact ory .TryGetDefaultConnectionFactory_can_be_u sed_to_create_instance_of_SqlCEConnectio nFactory_with_just_provider_invariant_na me() |
TryGetDefaultConnectionFactory_can_be_us ed_to_create_instance_of_SqlCEConnection Factory_with_provider_invariant_name_and _other_arguments() | Void | System.Data.Entity.Internal .AppConfigTests+GetDefaultConnectionFact ory .TryGetDefaultConnectionFactory_can_be_u sed_to_create_instance_of_SqlCEConnectio nFactory_with_provider_invariant_name_an d_other_arguments() |
TryGetSqlTypesAssembly_on_dev_machine_re turns_assembly_for_SQL_2008_native_types () | Void | System.Data.Entity.SqlServer .SqlTypesAssemblyLoaderTests .TryGetSqlTypesAssembly_on_dev_machine_r eturns_assembly_for_SQL_2008_native_type s() |
TryGetSqlTypesAssembly_returns_null_if_n ative_types_are_not_available() | Void | System.Data.Entity.SqlServer .SqlTypesAssemblyLoaderTests .TryGetSqlTypesAssembly_returns_null_if_ native_types_are_not_available() |
TryAddExpressionForIn_adds_left_and_righ t_values_and_returns_true_if_only_left_e xpression_matches() | Void | System.Data.Entity.SqlServer.SqlGen .SqlGeneratorTests+TryAddExpressionForIn .TryAddExpressionForIn_adds_left_and_rig ht_values_and_returns_true_if_only_left_ expression_matches() |
TryAddExpressionForIn_adds_left_and_righ t_values_and_returns_true_if_both_expres sions_match() | Void | System.Data.Entity.SqlServer.SqlGen .SqlGeneratorTests+TryAddExpressionForIn .TryAddExpressionForIn_adds_left_and_rig ht_values_and_returns_true_if_both_expre ssions_match() |
TryAddExpressionForIn_adds_right_and_lef t_values_and_returns_true_if_only_right_ expression_matches() | Void | System.Data.Entity.SqlServer.SqlGen .SqlGeneratorTests+TryAddExpressionForIn .TryAddExpressionForIn_adds_right_and_le ft_values_and_returns_true_if_only_right _expression_matches() |
TryAddExpressionForIn_adds_nothing_and_r eturns_false_if_neither_left_or_right_ma tch() | Void | System.Data.Entity.SqlServer.SqlGen .SqlGeneratorTests+TryAddExpressionForIn .TryAddExpressionForIn_adds_nothing_and_ returns_false_if_neither_left_or_right_m atch() |
TryGetPrecision_returns_false_for_non_de cimal_types() | Void | System.Data.Entity.SqlServer.Utilities .TypeUsageExtensionsTests+TryGetPrecisio n .TryGetPrecision_returns_false_for_non_d ecimal_types() |
Statistics
Stat | ReturnType |
---|---|
Sum: | 0 |
Average: | 0 |
Minimum: | 0 |
Maximum: | 0 |
Standard deviation: | 0 |
Variance: | 0 |
060
Source Files Organization |
|
![]() | Rule warning: Avoid referencing source file out of Visual Studio project directory |
// A source file located outside of the VS project directory can be add through:
// > Add > Existing Items... > Add As Link
//
// Don't use this possibility to share code accross several assemblies.
// This provoques type duplication at binary level.
// Hence maintainability is degraded and subtle versioning bug can appear.
// Prefer sharing types through classic libraries.
//
// This practice can be tolerated for certain types shared accross executable assemblies.
// Such type can be responsible for particular and not shareable startup related concerns,
// such as registering custom assembly resolving handlers or
// checking the .NET Framework version before loading any custom library.
warnif count > 0
from a in Application.Assemblies
where a.VisualStudioProjectFilePath != null
let vsProjDirPathLower = a.VisualStudioProjectFilePath.ParentDirectoryPath.ToString().ToLower()
from t in a.ChildTypes
where JustMyCode.Contains(t) && t.SourceFileDeclAvailable
from decl in t.SourceDecls
let sourceFilePathLower = decl.SourceFile.FilePath.ToString().ToLower()
where sourceFilePathLower .IndexOf(vsProjDirPathLower) != 0
select new { t, sourceFilePathLower , projectFilePath = a.VisualStudioProjectFilePath.ToString() }View Code Query or Rule BodyView Code Query or Rule Body
4 types matched
types | sourceFilePathLower | projectFilePath | Full Name |
---|---|---|---|
MemberInfoExtensions | \\psf\home\desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\src\common\memberinfoextensions.cs | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.ProviderAgnostic\FunctionalTests.ProviderAgnostic.csproj | System.Data.Entity.Functionals.Utilities .MemberInfoExtensions |
AssemblyExtensions | \\psf\home\desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\src\common\assemblyextensions.cs | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.ProviderAgnostic\FunctionalTests.ProviderAgnostic.csproj | System.Data.Entity.Functionals.Utilities .AssemblyExtensions |
MemberInfoExtensions | \\psf\home\desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\src\common\memberinfoextensions.cs | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests\FunctionalTests.csproj | System.Data.Entity.Functionals.Utilities .MemberInfoExtensions |
AssemblyExtensions | \\psf\home\desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\src\common\assemblyextensions.cs | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests\FunctionalTests.csproj | System.Data.Entity.Functionals.Utilities .AssemblyExtensions |
Statistics
Stat | sourceFilePathLower | projectFilePath |
---|---|---|
Sum: | 0 | 0 |
Average: | 0 | 0 |
Minimum: | 0 | 0 |
Maximum: | 0 | 0 |
Standard deviation: | 0 | 0 |
Variance: | 0 | 0 |
![]() | Rule warning: Avoid duplicating a type definition across assemblies |
// Prefer to factorize type definition in a library assembly.
warnif count > 0
let groups = Application.Types
.Where(t => !t.IsGeneratedByCompiler)
.GroupBy(t => t.FullName)
from @group in groups
where @group.Count() > 1
select new { t = @group.First(),
// In the 'types' column, make sure to group matched types by parent assemblies.
typesDefs = @group.ToArray()
}View Code Query or Rule BodyView Code Query or Rule Body
21 types matched
types | typesDefs | Full Name |
---|---|---|
TypeExtensions | 2 types | System.Data.Entity.Functionals.Utilities .TypeExtensions |
DebugCheck | 2 types | System.Data.Entity.Functionals.Utilities .DebugCheck |
MemberInfoExtensions | 2 types | System.Data.Entity.Functionals.Utilities .MemberInfoExtensions |
AssemblyExtensions | 2 types | System.Data.Entity.Functionals.Utilities .AssemblyExtensions |
PropertyInfoExtensions | 2 types | System.Data.Entity.Functionals.Utilities .PropertyInfoExtensions |
QueryTestHelpers | 2 types | System.Data.Entity.Query .QueryTestHelpers |
EnumTests | 2 types | System.Data.Entity.Query.LinqToEntities .EnumTests |
FunctionsTests | 2 types | System.Data.Entity.Query.LinqToEntities .FunctionsTests |
FunctionsTests+StringFunctions | 2 types | System.Data.Entity.Query.LinqToEntities .FunctionsTests+StringFunctions |
FunctionsTests+DateTimeFunctions | 2 types | System.Data.Entity.Query.LinqToEntities .FunctionsTests+DateTimeFunctions |
FunctionsTests+MathFunctions | 2 types | System.Data.Entity.Query.LinqToEntities .FunctionsTests+MathFunctions |
IncludeTests | 2 types | System.Data.Entity.Query.LinqToEntities .IncludeTests |
MaterializationTests | 2 types | System.Data.Entity.Query.LinqToEntities .MaterializationTests |
OrderByLiftingTests | 2 types | System.Data.Entity.Query.LinqToEntities .OrderByLiftingTests |
SqlProviderServicesTests | 2 types | System.Data.Entity.SqlServer .SqlProviderServicesTests |
AuditInfoMm | 2 types | Another.Place.AuditInfoMm |
CustomerMm | 2 types | Another.Place.CustomerMm |
LicenseStateMm | 2 types | Another.Place.LicenseStateMm |
LoginMm | 2 types | Another.Place.LoginMm |
PhoneMm | 2 types | Another.Place.PhoneMm |
PhoneTypeMm | 2 types | Another.Place.PhoneTypeMm |
Statistics
Stat | typesDefs |
---|---|
Sum: | 0 |
Average: | 0 |
Minimum: | 0 |
Maximum: | 0 |
Standard deviation: | 0 |
Variance: | 0 |
![]() | Rule warning: Avoid defining multiple types in a source file |
warnif count > 0
// Build a lookup indexed by source files, values being a sequence of types defined in the source file.
let lookup = Application.Types.Where(t =>
t.SourceFileDeclAvailable &&
// except nested types and types generated by compilers!
!t.IsGeneratedByCompiler &&
!t.IsNested)
// It could make sense to not apply this rule for enumerations.
// && !t.IsEnumeration)
// We use multi-key, since a type can be declared in multiple source files.
.ToMultiKeyLookup(t => t.SourceDecls.Select(d => d.SourceFile))
from @group in lookup where @group.Count() > 1
let sourceFile = @group.Key
// CQLinq doesn't let indexing result with sourceFile
// so we choose a typeIndex in types,
// preferably the type that has the file name.
let typeWithSourceFileName = @group.FirstOrDefault(t => t.SimpleName == sourceFile.FileNameWithoutExtension)
let typeIndex = typeWithSourceFileName ?? @group.First()
select new { typeIndex,
types = @group as IEnumerable<IType>,
sourceFile.FilePathString }View Code Query or Rule BodyView Code Query or Rule Body
72 types matched
types | types | FilePathString | Full Name |
---|---|---|---|
DynamicAssembly | 8 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestHelpers\DynamicAssembly.cs | System.Data.Entity.DynamicAssembly |
ConnectionStringFormat | 3 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestHelpers\ConstructionStrategies.cs | System.Data.Entity .ConnectionStringFormat |
DynamicTypeDescriptor<T> | 3 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestHelpers\DynamicTypeDescriptor.cs | System.Data.Entity.DynamicTypeDescriptor <T> |
InfoContext | 11 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\Migrations\TestHelpers\InfoContext.cs | System.Data.Entity.Migrations .InfoContext |
MigrationsCustomerBase | 57 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\Migrations\TestModel\TestModels.cs | System.Data.Entity.Migrations .MigrationsCustomerBase |
ConventionsScenarioTests | 12 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\CodeFirst\ConventionsScenarioTests.cs | FunctionalTests.ConventionsScenarioTests |
DataAnnotationScenarioTests | 4 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\CodeFirst\DataAnnotationScenarioTests.cs | FunctionalTests .DataAnnotationScenarioTests |
DataServicesTests | 3 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\CodeFirst\DataServicesTests.cs | FunctionalTests.DataServicesTests |
InheritanceScenarioTests | 54 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\CodeFirst\InheritanceScenarioTests.cs | FunctionalTests.InheritanceScenarioTests |
ProductPhoto | 2 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestModels\StoreModel\ProductPhoto.cs | FunctionalTests.Model.ProductPhoto |
NT | 3 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestModels\SimpleModel\FuncyContexts.cs | DaFunc.NT |
HasChangesTests | 3 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.ProviderAgnostic\ProductivityApi\HasChangesTests.cs | System.Data.Entity.ProductivityApi .HasChangesTests |
MemberInfoExtensions | 2 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\src\Common\MemberInfoExtensions.cs | System.Data.Entity.Functionals.Utilities .MemberInfoExtensions |
AssemblyExtensions | 2 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\src\Common\AssemblyExtensions.cs | System.Data.Entity.Functionals.Utilities .AssemblyExtensions |
LazyBlogContext | 4 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.ProviderAgnostic\TestModels\ExtraLazyLoading\LazyBlogContext.cs | System.Data.Entity.TestModels .ExtraLazyLoading.LazyBlogContext |
Bug | 2 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.ProviderAgnostic\TestModels\ProviderAgnosticModel\Bug.cs | System.Data.Entity.TestModels .ProviderAgnosticModel.Bug |
AllTypes | 2 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.ProviderAgnostic\TestModels\ProviderAgnosticModel\AllTypes.cs | System.Data.Entity.TestModels .ProviderAgnosticModel.AllTypes |
StandardWeapon | 2 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.ProviderAgnostic\TestModels\ProviderAgnosticModel\StandardWeapon.cs | System.Data.Entity.TestModels .ProviderAgnosticModel.StandardWeapon |
ModelNamespaceAndContainerTests | 10 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests\ProductivityApi\ModelNamespaceAndContainerTests.cs | ProductivityApiTests .ModelNamespaceAndContainerTests |
DatabaseLogFormatterTests | 2 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests\Interception\DatabaseLogFormatterTests.cs | System.Data.Entity.Interception .DatabaseLogFormatterTests |
MetadataCachingTests | 2 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests\Metadata\MetadataCachingTests.cs | System.Data.Entity.Metadata .MetadataCachingTests |
MetadataEnumTests | 2 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests\Metadata\MetadataEnumTests.cs | System.Data.Entity.Metadata .MetadataEnumTests |
TransactionsTests | 5 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests\Objects\TransactionsTests.cs | System.Data.Entity.Objects .TransactionsTests |
PregeneratedViewsTests | 12 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests\ViewGeneration\PregeneratedViewsTests.cs | System.Data.Entity.ViewGeneration .PregeneratedViewsTests |
DbTestCase | 4 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests\Migrations\TestHelpers\DbTestCase.cs | System.Data.Entity.Migrations.DbTestCase |
InitializerScenarios | 22 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests\Migrations\InitializerScenarios.cs | System.Data.Entity.Migrations .InitializerScenarios |
TestDatabase | 3 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests\Migrations\TestHelpers\TestDatabase.cs | System.Data.Entity.Migrations .TestDatabase |
AutoAndGenerateTestCase<TContextV1 ,TContextV2> | 3 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests\Migrations\AutoAndGenerateTestCase.cs | System.Data.Entity.Migrations .AutoAndGenerateTestCase<TContextV1 ,TContextV2> |
AutoAndGenerateScenarios_Empty | 66 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests\Migrations\AutoAndGenerateScenarios.cs | System.Data.Entity.Migrations .AutoAndGenerateScenarios_Empty |
ToolingScenarios | 2 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests\Migrations\ToolingScenarios.cs | System.Data.Entity.Migrations .ToolingScenarios |
TransactionScenarios | 2 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests\Migrations\TransactionScenarios.cs | System.Data.Entity.Migrations .TransactionScenarios |
SqlGeneratorTests | 6 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests\Query\SqlGeneratorTests.cs | System.Data.Entity.Query .SqlGeneratorTests |
ApplyOpRulesTests | 4 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests\Query\ApplyOpRulesTests.cs | System.Data.Entity.Query.LinqToEntities .ApplyOpRulesTests |
OrderByLiftingTests | 2 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests\Query\LinqToEntities\OrderByLiftingTests.cs | System.Data.Entity.Query.LinqToEntities .OrderByLiftingTests |
StoredProceduresTests | 2 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests\Query\StoredProcedures\StoredProceduresTests.cs | System.Data.Entity.Query .StoredProcedures.StoredProceduresTests |
ArubaAllTypes | 3 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests\TestModels\ArubaModel\ArubaAllTypes.cs | System.Data.Entity.TestModels.ArubaModel .ArubaAllTypes |
ArubaBug | 2 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests\TestModels\ArubaModel\ArubaBug.cs | System.Data.Entity.TestModels.ArubaModel .ArubaBug |
StandardWeapon | 2 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests\TestModels\GearsOfWarModel\StandardWeapon.cs | System.Data.Entity.TestModels .GearsOfWarModel.StandardWeapon |
Building | 3 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests\TestModels\FantasyModel\Building.cs | System.Data.Entity.TestModels .FantasyModel.Building |
Creature | 9 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests\TestModels\FantasyModel\Creature.cs | System.Data.Entity.TestModels .FantasyModel.Creature |
Skill | 2 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests\TestModels\FantasyModel\Skill.cs | System.Data.Entity.TestModels .FantasyModel.Skill |
Spell | 3 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests\TestModels\FantasyModel\Spell.cs | System.Data.Entity.TestModels .FantasyModel.Spell |
LimitExpressionTests | 2 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests\PlanCompiler\LimitExpressionTests.cs | PlanCompilerTests.LimitExpressionTests |
DbContextTests | 3 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests\ProductivityApi\DbContextTests.cs | ProductivityApiTests.DbContextTests |
NamespaceAndNestingTests | 10 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests\ProductivityApi\NamespaceAndNestingTests.cs | ProductivityApiTests .NamespaceAndNestingTests |
DbPropertyValuesTests | 6 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests\ProductivityApi\DbPropertyValuesTests.cs | ProductivityApiTests .DbPropertyValuesTests |
InvalidMappingContext | 4 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests\TestModels\InvalidMappingModel\InvalidMappingContext.cs | ProductivityApiTests .InvalidMappingContext |
ModelWithWideProperties | 4 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests\TestModels\SimpleModel\ModelWithWideProperties.cs | ProductivityApiTests .ModelWithWideProperties |
SpatialNorthwindContext | 6 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests\TestModels\SpatialTvfsModel\SpatialNorthwindContext.cs | ProductivityApiTests .SpatialNorthwindContext |
DbFunctionScenarios | 5 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests\ProductivityApi\DbFunctionScenarios.cs | FunctionalTests.ProductivityApi .DbFunctionScenarios |
AdvancedPatternsMasterContext | 2 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests\TestModels\AdvancedPatternsModel\AdvancedPatternsMasterContext.cs | AdvancedPatternsModel .AdvancedPatternsMasterContext |
DisabledByConfigInitializerContext | 4 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests\TestModels\SimpleModel\DisabledInitializerContext.cs | SimpleModel .DisabledByConfigInitializerContext |
Office | 4 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests\TestModels\SimpleModel\BadMappingModel.cs | BadMappingModel.Office |
ValidationTests | 21 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests\ProductivityApi\ValidationTests.cs | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .ValidationTests |
TypeExtensionsTests | 4 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\UnitTests\Utilities\TypeExtensionsTests.cs | System.Data.Entity.Utilities .TypeExtensionsTests |
MultiThreadingTests | 2 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\UnitTests\MultiThreadingTests.cs | System.Data.Entity.MultiThreadingTests |
ConnectionFactoryConfigTests | 8 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\UnitTests\ConnectionFactoryConfig\ConnectionFactoryConfigTests.cs | System.Data.Entity .ConnectionFactoryConfig .ConnectionFactoryConfigTests |
EntityValidatorBuilderTests | 7 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\UnitTests\Validation\EntityValidatorBuilderTests.cs | System.Data.Entity.Validation .EntityValidatorBuilderTests |
DbExpressionBuilderTests | 11 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\UnitTests\Core\Common\CommandTrees\DbExpressionBuilderTests.cs | System.Data.Entity.Core.Common .CommandTrees.DbExpressionBuilderTests |
EntityConnectionTests | 2 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\UnitTests\Core\EntityClient\EntityConnectionTests.cs | System.Data.Entity.Core.EntityClient .EntityConnectionTests |
DelegateFactoryTests | 8 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\UnitTests\Core\Objects\DelegateFactoryTests.cs | System.Data.Entity.Core.Objects .DelegateFactoryTests |
RelationshipManagerTests | 4 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\UnitTests\Core\Objects\DataClasses\RelationshipManagerTests.cs | System.Data.Entity.Core.Objects .DataClasses.RelationshipManagerTests |
EntityProxyFactoryTests | 6 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\UnitTests\Core\Objects\Internal\EntityProxyFactoryTests.cs | System.Data.Entity.Core.Objects.Internal .EntityProxyFactoryTests |
EntityProxyTypeInfoTests | 8 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\UnitTests\Core\Objects\Internal\EntityProxyTypeInfoTests.cs | System.Data.Entity.Core.Objects.Internal .EntityProxyTypeInfoTests |
DbContextInfoTests | 2 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\UnitTests\Infrastructure\DbContextInfoTests.cs | System.Data.Entity.Infrastructure .DbContextInfoTests |
ModelConfigurationTests | 2 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\UnitTests\ModelConfiguration\Configuration\ModelConfigurationTests.cs | System.Data.Entity.ModelConfiguration .Configuration.ModelConfigurationTests |
AppConfigTests | 17 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\UnitTests\Internal\AppConfigTests.cs | System.Data.Entity.Internal .AppConfigTests |
DbMigratorTests | 7 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\UnitTests\Migrations\DbMigratorTests.cs | System.Data.Entity.Migrations .DbMigratorTests |
EdmModelDifferTests | 10 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\UnitTests\Migrations\Infrastructure\EdmModelDifferTests.cs | System.Data.Entity.Migrations .Infrastructure.EdmModelDifferTests |
Customer | 15 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\UnitTests\Migrations\Infrastructure\FunctionsModel.cs | System.Data.Entity.Migrations .Infrastructure.FunctionsModel.Customer |
CommandLineTest | 5 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\UnitTests\CommandLine\CommandLineTest.cs | CmdLine.Tests.CommandLineTest |
DbContextTests | 4 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\UnitTests\DbContextTests.cs | ProductivityApiUnitTests.DbContextTests |
Statistics
Stat | types | FilePathString |
---|---|---|
Sum: | 0 | 0 |
Average: | 0 | 0 |
Minimum: | 0 | 0 |
Maximum: | 0 | 0 |
Standard deviation: | 0 | 0 |
Variance: | 0 | 0 |
![]() | Rule warning: Namespace name should correspond to file location |
// For a good code organization,
// do mirror the namespaces hierarchy and the source files directories tree.
warnif count > 0
from n in Application.Namespaces
// Replace dots by spaces in namespace name
let dirCorresponding = n.Name.Replace('.', ' ')
// Look at source file decl of JustMyCode type's declared in n
from t in n.ChildTypes
where JustMyCode.Contains(t) && t.SourceFileDeclAvailable
from decl in t.SourceDecls
let sourceFilePath = decl.SourceFile.FilePath.ToString()
// Replace dots and path separators by spaces in source files names
where !sourceFilePath.Replace('.',' ').Replace('\\',' ').Contains(dirCorresponding)
select new { t, dirCorresponding , sourceFilePath } View Code Query or Rule BodyView Code Query or Rule Body
3,711 types matched
types | dirCorresponding | sourceFilePath | Full Name |
---|---|---|---|
TestBase | System Data Entity | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestHelpers\TestBase.cs | System.Data.Entity.TestBase |
FunctionalTestBase | System Data Entity | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestHelpers\FunctionalTestBase.cs | System.Data.Entity.FunctionalTestBase |
AnyValueParameter | System Data Entity | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestHelpers\AnyValueParameter.cs | System.Data.Entity.AnyValueParameter |
CsdlToClrAssemblyConverter | System Data Entity | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestHelpers\CsdlToClrAssemblyConverter.cs | System.Data.Entity .CsdlToClrAssemblyConverter |
DynamicAssembly | System Data Entity | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestHelpers\DynamicAssembly.cs | System.Data.Entity.DynamicAssembly |
AnnotationAttributeBuilder | System Data Entity | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestHelpers\DynamicAssembly.cs | System.Data.Entity .AnnotationAttributeBuilder |
MemberAccess | System Data Entity | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestHelpers\DynamicAssembly.cs | System.Data.Entity.MemberAccess |
DynamicProperty | System Data Entity | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestHelpers\DynamicAssembly.cs | System.Data.Entity.DynamicProperty |
DynamicField | System Data Entity | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestHelpers\DynamicAssembly.cs | System.Data.Entity.DynamicField |
DynamicType | System Data Entity | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestHelpers\DynamicAssembly.cs | System.Data.Entity.DynamicType |
DynamicStructuralType | System Data Entity | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestHelpers\DynamicAssembly.cs | System.Data.Entity.DynamicStructuralType |
DynamicEnumType | System Data Entity | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestHelpers\DynamicAssembly.cs | System.Data.Entity.DynamicEnumType |
GenericConnection<T> | System Data Entity | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestHelpers\GenericConnection.cs | System.Data.Entity.GenericConnection<T> |
GenericProviderFactory<T> | System Data Entity | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestHelpers\GenericProviderFactory`.cs | System.Data.Entity .GenericProviderFactory<T> |
GenericProviderServices | System Data Entity | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestHelpers\GenericProviderServices.cs | System.Data.Entity .GenericProviderServices |
MutableResolver | System Data Entity | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestHelpers\MutableResolver.cs | System.Data.Entity.MutableResolver |
ExtendedFactAttribute | System Data Entity | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestHelpers\ExtendedFactAttribute.cs | System.Data.Entity.ExtendedFactAttribute |
TestGroup | System Data Entity | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestHelpers\TestGroup.cs | System.Data.Entity.TestGroup |
AssemblyResourceLookup | System Data Entity | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestHelpers\AssemblyResourceLookup.cs | System.Data.Entity .AssemblyResourceLookup |
ConnectionEventsTracker | System Data Entity | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestHelpers\ConnectionEventsTracker.cs | System.Data.Entity .ConnectionEventsTracker |
ConnectionStringFormat | System Data Entity | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestHelpers\ConstructionStrategies.cs | System.Data.Entity .ConnectionStringFormat |
DbContextConstructorArgumentType | System Data Entity | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestHelpers\ConstructionStrategies.cs | System.Data.Entity .DbContextConstructorArgumentType |
DbCompiledModelContents | System Data Entity | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestHelpers\ConstructionStrategies.cs | System.Data.Entity .DbCompiledModelContents |
DbContextExtensions | System Data Entity | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestHelpers\DbContextExtensions.cs | System.Data.Entity.DbContextExtensions |
ExceptionTestExtensions | System Data Entity | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestHelpers\ExceptionTestExtensions.cs | System.Data.Entity .ExceptionTestExtensions |
ExceptionHelpers | System Data Entity | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestHelpers\ExceptionHelpers.cs | System.Data.Entity.ExceptionHelpers |
HashSetBasedDbSet<T> | System Data Entity | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestHelpers\HashSetBasedDbSet.cs | System.Data.Entity.HashSetBasedDbSet<T> |
IOHelpers | System Data Entity | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestHelpers\IOHelpers.cs | System.Data.Entity.IOHelpers |
ModelHelpers | System Data Entity | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestHelpers\ModelHelpers.cs | System.Data.Entity.ModelHelpers |
ObservableListSource<T> | System Data Entity | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestHelpers\ObservableListSource`.cs | System.Data.Entity.ObservableListSource <T> |
ProviderRegistry | System Data Entity | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestHelpers\ProviderRegistry.cs | System.Data.Entity.ProviderRegistry |
ModelAssertions | System Data Entity | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestHelpers\ModelAssertions.cs | System.Data.Entity.ModelAssertions |
ModelAssertions+CompositeParameterAssert ions | System Data Entity | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestHelpers\ModelAssertions.cs | System.Data.Entity .ModelAssertions+CompositeParameterAsser tions |
ModelAssertions+ColumnAssertions | System Data Entity | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestHelpers\ModelAssertions.cs | System.Data.Entity .ModelAssertions+ColumnAssertions |
ModelAssertions+PropertyAssertions | System Data Entity | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestHelpers\ModelAssertions.cs | System.Data.Entity .ModelAssertions+PropertyAssertions |
ModelAssertions+TypeAssertions | System Data Entity | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestHelpers\ModelAssertions.cs | System.Data.Entity .ModelAssertions+TypeAssertions |
ModelAssertions+MappingFragmentAssertion s | System Data Entity | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestHelpers\ModelAssertions.cs | System.Data.Entity .ModelAssertions+MappingFragmentAssertio ns |
ResourceUtilities | System Data Entity | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestHelpers\ResourceUtilities.cs | System.Data.Entity.ResourceUtilities |
StringResourceVerifier | System Data Entity | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestHelpers\StringResourceVerifier.cs | System.Data.Entity .StringResourceVerifier |
StringResourceVerifier+StringSection | System Data Entity | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestHelpers\StringResourceVerifier.cs | System.Data.Entity .StringResourceVerifier+StringSection |
TypeAssertion<TStructuralType> | System Data Entity | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestHelpers\TypeAssertion`.cs | System.Data.Entity.TypeAssertion <TStructuralType> |
AdventureWorksModelBuilder | System Data Entity | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestHelpers\AdventureWorksModelBuilder.cs | System.Data.Entity .AdventureWorksModelBuilder |
DynamicTypeDescriptionProvider<T> | System Data Entity | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestHelpers\DynamicTypeDescriptor.cs | System.Data.Entity .DynamicTypeDescriptionProvider<T> |
DynamicTypeDescriptor<T> | System Data Entity | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestHelpers\DynamicTypeDescriptor.cs | System.Data.Entity.DynamicTypeDescriptor <T> |
DynamicTypeDescriptionConfiguration<T> | System Data Entity | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestHelpers\DynamicTypeDescriptor.cs | System.Data.Entity .DynamicTypeDescriptionConfiguration<T> |
DbDatabaseMappingExtensions | System Data Entity | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestHelpers\DbDatabaseMappingExtensions.cs | System.Data.Entity .DbDatabaseMappingExtensions |
TableSplittingTests | System Data Entity CodeFirst | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\CodeFirst\TableSplittingTests.cs | System.Data.Entity.CodeFirst .TableSplittingTests |
TableSplittingTests+E1 | System Data Entity CodeFirst | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\CodeFirst\TableSplittingTests.cs | System.Data.Entity.CodeFirst .TableSplittingTests+E1 |
TableSplittingTests+E2 | System Data Entity CodeFirst | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\CodeFirst\TableSplittingTests.cs | System.Data.Entity.CodeFirst .TableSplittingTests+E2 |
TableSplittingTests+E3 | System Data Entity CodeFirst | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\CodeFirst\TableSplittingTests.cs | System.Data.Entity.CodeFirst .TableSplittingTests+E3 |
TableSplittingTests+A | System Data Entity CodeFirst | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\CodeFirst\TableSplittingTests.cs | System.Data.Entity.CodeFirst .TableSplittingTests+A |
TableSplittingTests+B | System Data Entity CodeFirst | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\CodeFirst\TableSplittingTests.cs | System.Data.Entity.CodeFirst .TableSplittingTests+B |
TableSplittingTests+B1 | System Data Entity CodeFirst | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\CodeFirst\TableSplittingTests.cs | System.Data.Entity.CodeFirst .TableSplittingTests+B1 |
TableSplittingTests+C | System Data Entity CodeFirst | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\CodeFirst\TableSplittingTests.cs | System.Data.Entity.CodeFirst .TableSplittingTests+C |
TableSplittingTests+C1 | System Data Entity CodeFirst | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\CodeFirst\TableSplittingTests.cs | System.Data.Entity.CodeFirst .TableSplittingTests+C1 |
TableSplittingTests+Z | System Data Entity CodeFirst | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\CodeFirst\TableSplittingTests.cs | System.Data.Entity.CodeFirst .TableSplittingTests+Z |
TptMappingTests | System Data Entity CodeFirst | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\CodeFirst\TptMappingTests.cs | System.Data.Entity.CodeFirst .TptMappingTests |
TptMappingTests+A | System Data Entity CodeFirst | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\CodeFirst\TptMappingTests.cs | System.Data.Entity.CodeFirst .TptMappingTests+A |
TptMappingTests+AA | System Data Entity CodeFirst | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\CodeFirst\TptMappingTests.cs | System.Data.Entity.CodeFirst .TptMappingTests+AA |
TptMappingTests+AB | System Data Entity CodeFirst | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\CodeFirst\TptMappingTests.cs | System.Data.Entity.CodeFirst .TptMappingTests+AB |
TptMappingTests+B | System Data Entity CodeFirst | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\CodeFirst\TptMappingTests.cs | System.Data.Entity.CodeFirst .TptMappingTests+B |
TptMappingTests+BA | System Data Entity CodeFirst | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\CodeFirst\TptMappingTests.cs | System.Data.Entity.CodeFirst .TptMappingTests+BA |
TptMappingTests+BB | System Data Entity CodeFirst | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\CodeFirst\TptMappingTests.cs | System.Data.Entity.CodeFirst .TptMappingTests+BB |
BasicDesignTimeScenarios | System Data Entity Design | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\Design\BasicDesignTimeScenarios.cs | System.Data.Entity.Design .BasicDesignTimeScenarios |
BasicDesignTimeScenarios+ResultHandler | System Data Entity Design | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\Design\BasicDesignTimeScenarios.cs | System.Data.Entity.Design .BasicDesignTimeScenarios+ResultHandler |
EnumOCMappingTests | System Data Entity MetadataMapping | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\MetadataMapping\EnumOCMappingTests.cs | System.Data.Entity.MetadataMapping .EnumOCMappingTests |
CodeFirstScaffoldingContext | System Data Entity TestHelpers | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestHelpers\CodeFirstScaffoldingContext.cs | System.Data.Entity.TestHelpers .CodeFirstScaffoldingContext |
CodeFirstScaffoldingContextWithConnectio n | System Data Entity TestHelpers | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestHelpers\CodeFirstScaffoldingContextWithConnection.cs | System.Data.Entity.TestHelpers .CodeFirstScaffoldingContextWithConnecti on |
CollationAttribute | System Data Entity TestHelpers | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestHelpers\CollationAttribute.cs | System.Data.Entity.TestHelpers .CollationAttribute |
CollationCSharpCodeGenerator | System Data Entity TestHelpers | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestHelpers\CollationCSharpCodeGenerator.cs | System.Data.Entity.TestHelpers .CollationCSharpCodeGenerator |
CollationSerializer | System Data Entity TestHelpers | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestHelpers\CollationSerializer.cs | System.Data.Entity.TestHelpers .CollationSerializer |
DatabaseTestHelpers | System Data Entity TestHelpers | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestHelpers\DatabaseTestHelpers.cs | System.Data.Entity.TestHelpers .DatabaseTestHelpers |
DbDispatchersHelpers | System Data Entity TestHelpers | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestHelpers\DbDispatchersHelpers.cs | System.Data.Entity.TestHelpers .DbDispatchersHelpers |
DefaultFunctionalTestsConnectionFactory | System Data Entity TestHelpers | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestHelpers\DefaultFunctionalTestsConnectionFactory.cs | System.Data.Entity.TestHelpers .DefaultFunctionalTestsConnectionFactory |
DefaultUnitTestsConnectionFactory | System Data Entity TestHelpers | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestHelpers\DefaultUnitTestsConnectionFactory.cs | System.Data.Entity.TestHelpers .DefaultUnitTestsConnectionFactory |
ExtendedSqlAzureExecutionStrategy | System Data Entity TestHelpers | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestHelpers\ExtendedSqlAzureExecutionStrategy.cs | System.Data.Entity.TestHelpers .ExtendedSqlAzureExecutionStrategy |
FakeProviderFactoryResolver | System Data Entity TestHelpers | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestHelpers\FakeProviderFactoryResolver.cs | System.Data.Entity.TestHelpers .FakeProviderFactoryResolver |
FakeProviderServicesResolver | System Data Entity TestHelpers | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestHelpers\FakeProviderServicesResolver.cs | System.Data.Entity.TestHelpers .FakeProviderServicesResolver |
FunctionalTestsConfiguration | System Data Entity TestHelpers | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestHelpers\FunctionalTestsConfiguration.cs | System.Data.Entity.TestHelpers .FunctionalTestsConfiguration |
IndexAnnotationEqualityComparer | System Data Entity TestHelpers | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestHelpers\IndexAnnotationEqualityComparer.cs | System.Data.Entity.TestHelpers .IndexAnnotationEqualityComparer |
IndexAttributeEqualityComparer | System Data Entity TestHelpers | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestHelpers\IndexAttributeEqualityComparer.cs | System.Data.Entity.TestHelpers .IndexAttributeEqualityComparer |
LocalizationTestHelpers | System Data Entity TestHelpers | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestHelpers\LocalizationTestHelpers.cs | System.Data.Entity.TestHelpers .LocalizationTestHelpers |
RegisterMutableResolver | System Data Entity TestHelpers | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestHelpers\RegisterMutableResolver.cs | System.Data.Entity.TestHelpers .RegisterMutableResolver |
SqlServerMigrationSqlGeneratorWtihCollat ions | System Data Entity TestHelpers | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestHelpers\SqlServerMigrationSqlGeneratorWtihCollations.cs | System.Data.Entity.TestHelpers .SqlServerMigrationSqlGeneratorWtihColla tions |
TestLoadedInterceptor | System Data Entity TestHelpers | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestHelpers\TestLoadedInterceptor.cs | System.Data.Entity.TestHelpers .TestLoadedInterceptor |
TestSqlAzureExecutionStrategy | System Data Entity TestHelpers | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestHelpers\TestSqlAzureExecutionStrategy.cs | System.Data.Entity.TestHelpers .TestSqlAzureExecutionStrategy |
InfoContext | System Data Entity Migrations | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\Migrations\TestHelpers\InfoContext.cs | System.Data.Entity.Migrations .InfoContext |
TableInfo | System Data Entity Migrations | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\Migrations\TestHelpers\InfoContext.cs | System.Data.Entity.Migrations.TableInfo |
ColumnInfo | System Data Entity Migrations | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\Migrations\TestHelpers\InfoContext.cs | System.Data.Entity.Migrations.ColumnInfo |
TableConstraintInfo | System Data Entity Migrations | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\Migrations\TestHelpers\InfoContext.cs | System.Data.Entity.Migrations .TableConstraintInfo |
KeyConstraintInfo | System Data Entity Migrations | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\Migrations\TestHelpers\InfoContext.cs | System.Data.Entity.Migrations .KeyConstraintInfo |
UniqueConstraintInfoBase | System Data Entity Migrations | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\Migrations\TestHelpers\InfoContext.cs | System.Data.Entity.Migrations .UniqueConstraintInfoBase |
UniqueConstraintInfo | System Data Entity Migrations | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\Migrations\TestHelpers\InfoContext.cs | System.Data.Entity.Migrations .UniqueConstraintInfo |
PrimaryKeyConstraintInfo | System Data Entity Migrations | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\Migrations\TestHelpers\InfoContext.cs | System.Data.Entity.Migrations .PrimaryKeyConstraintInfo |
ForeignKeyConstraintInfo | System Data Entity Migrations | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\Migrations\TestHelpers\InfoContext.cs | System.Data.Entity.Migrations .ForeignKeyConstraintInfo |
ReferentialConstraintInfo | System Data Entity Migrations | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\Migrations\TestHelpers\InfoContext.cs | System.Data.Entity.Migrations .ReferentialConstraintInfo |
KeyColumnUsageInfo | System Data Entity Migrations | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\Migrations\TestHelpers\InfoContext.cs | System.Data.Entity.Migrations .KeyColumnUsageInfo |
MigrationsCustomerBase | System Data Entity Migrations | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\Migrations\TestModel\TestModels.cs | System.Data.Entity.Migrations .MigrationsCustomerBase |
MigrationsCustomer | System Data Entity Migrations | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\Migrations\TestModel\TestModels.cs | System.Data.Entity.Migrations .MigrationsCustomer |
SpecialCustomer | System Data Entity Migrations | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\Migrations\TestModel\TestModels.cs | System.Data.Entity.Migrations .SpecialCustomer |
Statistics
Stat | dirCorresponding | sourceFilePath |
---|---|---|
Sum: | 0 | 0 |
Average: | 0 | 0 |
Minimum: | 0 | 0 |
Maximum: | 0 | 0 |
Standard deviation: | 0 | 0 |
Variance: | 0 | 0 |
![]() | Rule warning: Types with source files stored in the same directory, should be declared in the same namespace |
warnif count > 0
// Group JustMyCode types in a lookup
// where groups are keyed with directories that contain the types' source file(s).
// Note that a type can be contained in several groups
// if it is declared in several source files stored in different directories.
let lookup = JustMyCode.Types.Where(t => t.SourceFileDeclAvailable)
.ToMultiKeyLookup(
t => t.SourceDecls.Select(
decl => decl.SourceFile.FilePath.ParentDirectoryPath).Distinct()
)
from groupOfTypes in lookup
let parentNamespaces = groupOfTypes.ParentNamespaces()
// Select group of types (with source files stored in the same directory) ...
// ... but contained in several namespaces
where parentNamespaces.Count() > 1
// mainNamespaces is the namespace that contains many types
// declared in the directory groupOfTypes .key
let mainNamespace = groupOfTypes
.ToLookup(t => t.ParentNamespace)
.OrderByDescending(g => g.Count()).First().Key
// Select types with source files stored in the same directory,
// but contained in namespaces different than mainNamespace.
let typesOutOfMainNamespace = groupOfTypes
.Where(t => t.ParentNamespace != mainNamespace )
// Filter types declared on several source files that contain generated methods
// because typically such type contains one or several partial definitions generated.
// These partially generated types would be false positive for the present rule.
.Where(t => t.SourceDecls.Count() == 1 ||
t.Methods.Count(m => JustMyCode.Contains(m)) == 0)
where typesOutOfMainNamespace.Count() > 0
select new { mainNamespace,
// Typically a type in typesOutOfMainNamespace ...
// 1) ... is contained in the wrong namespace but its source file(s) is stored in the right directory.
// --> In such situation the type should be contained in mainNamespace.
// 2) ... is contained in the right namespace but its source file(s) is stored in the wrong directory
// --> In such situation the source file of type must be moved to the parent namespace directory.
// 3) ... is declared in multiple source files, stored in different directories.
// --> It would be preferable that all source files are stored in a single directory.
typesOutOfMainNamespace }
View Code Query or Rule BodyView Code Query or Rule Body
26 namespaces matched
namespaces | typesOutOfMainNamespace | Full Name |
---|---|---|
System.Data.Entity | 20 types | System.Data.Entity |
FunctionalTests | 61 types | FunctionalTests |
System.Data.Entity.Migrations | 30 types | System.Data.Entity.Migrations |
SimpleModel | 4 types | SimpleModel |
ProductivityApiTests | 9 types | ProductivityApiTests |
System.Data.Entity.Functionals.Utilities | 2 types | System.Data.Entity.Functionals.Utilities |
ProductivityApiTests | 77 types | ProductivityApiTests |
System.Data.Entity | 5 types | System.Data.Entity |
System.Data.Entity.Migrations | 15 types | System.Data.Entity.Migrations |
System.Data.Entity.Migrations | 1 type | System.Data.Entity.Migrations |
System.Data.Entity.Query | 10 types | System.Data.Entity.Query |
System.Data.Entity.Query.LinqToEntities | 20 types | System.Data.Entity.Query.LinqToEntities |
SimpleModel | 8 types | SimpleModel |
AdvancedPatternsModel | 1 type | AdvancedPatternsModel |
System.Data.Entity.Utilities | 3 types | System.Data.Entity.Utilities |
System.Data.Entity | 24 types | System.Data.Entity |
System.Data.Entity.ModelConfiguration .Internal.UnitTests | 3 types | System.Data.Entity.ModelConfiguration .Internal.UnitTests |
CmdLine.Tests | 5 types | CmdLine.Tests |
System.Data.Entity.Core.Common .CommandTrees | 8 types | System.Data.Entity.Core.Common .CommandTrees |
System.Data.Entity.Core.Query .ResultAssembly | 1 type | System.Data.Entity.Core.Query .ResultAssembly |
System.Data.Entity.Infrastructure | 2 types | System.Data.Entity.Infrastructure |
System.Data.Entity.ModelConfiguration .Edm | 7 types | System.Data.Entity.ModelConfiguration .Edm |
System.Data.Entity.ModelConfiguration .Configuration.Conventions | 2 types | System.Data.Entity.ModelConfiguration .Configuration.Conventions |
System.Data.Entity.ModelConfiguration .Configuration.Properties.Primitive | 4 types | System.Data.Entity.ModelConfiguration .Configuration.Properties.Primitive |
System.Data.Entity.ModelConfiguration .Configuration | 3 types | System.Data.Entity.ModelConfiguration .Configuration |
System.Data.Entity.Migrations .Infrastructure | 24 types | System.Data.Entity.Migrations .Infrastructure |
Statistics
Stat | typesOutOfMainNamespace |
---|---|
Sum: | 0 |
Average: | 0 |
Minimum: | 0 |
Maximum: | 0 |
Standard deviation: | 0 |
Variance: | 0 |
![]() | Rule warning: Types declared in the same namespace, should have their source files stored in the same directory |
warnif count > 0
from @namespace in Application.Namespaces
// Group types of @namespace in a lookup
// where groups are keyed with directories that contain the types' source file(s).
// Note that a type can be contained in several groups
// if it is declared in several source files stored in different directories.
let lookup = @namespace.ChildTypes.Where(t => t.SourceFileDeclAvailable && JustMyCode.Contains(t))
.ToMultiKeyLookup(
t => t.SourceDecls.Select(
decl => decl.SourceFile.FilePath.ParentDirectoryPath).Distinct()
)
// Are types of @namespaces declared in more than one directory?
where lookup.Count > 1
// Infer the main folder, preferably the one that has the same name as the namespace.
let dirs = lookup.Select(types => types.Key)
let mainDirNullable = dirs.Where(d => d.DirectoryName == @namespace.SimpleName).FirstOrDefault()
let mainDir = mainDirNullable ?? dirs.First()
// Types declared out of mainDir, are types in group of types declared in a directory different than mainDir!
let typesDeclaredOutOfMainDir = lookup.Where(types => types.Key != mainDir)
.SelectMany(types => types)
// Filter types declared on several source files that contain generated methods
// because typically such type contains one or several partial definitions generated.
// These partially generated types would be false positive for the present rule.
.Where(t => t.SourceDecls.Count() == 1 ||
t.Methods.Count(m => JustMyCode.Contains(m)) == 0)
where typesDeclaredOutOfMainDir.Count() > 0
select new { @namespace,
// Typically a type in typesDeclaredOutOfMainDir ...
// 1) ... is contained in the wrong namespace but its source file(s) is stored in the right directory.
// --> In such situation the type parent namespace should be the namespace corresponding to the directory.
// 2) ... is contained in the right namespace but its source file(s) is stored in the wrong directory
// --> In such situation the type source file should be moved to mainDir.
// 3) ... is declared in multiple source files, stored in different directories.
// --> It would be preferable that all source files are stored in a single directory.
typesDeclaredOutOfMainDir ,
mainDir = mainDir.ToString() }View Code Query or Rule BodyView Code Query or Rule Body
25 namespaces matched
namespaces | typesDeclaredOutOfMainDir | mainDir | Full Name |
---|---|---|---|
System.Data.Entity.Migrations | 27 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\Migrations\TestHelpers | System.Data.Entity.Migrations |
FunctionalTests | 1 type | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\CodeFirst | FunctionalTests |
System.Data.Entity.Migrations | 20 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests\Migrations | System.Data.Entity.Migrations |
System.Data.Entity.Query | 9 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests\Query | System.Data.Entity.Query |
System.Data.Entity.Query.LinqToEntities | 10 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests\Query\LinqToEntities | System.Data.Entity.Query.LinqToEntities |
ProductivityApiTests | 15 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests\ProductivityApi | ProductivityApiTests |
FunctionalTests.ProductivityApi .TemplateModels.CsAdvancedPatterns | 1 type | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests\TestModels\TemplateModels\CsAdvancedPatterns | FunctionalTests.ProductivityApi .TemplateModels.CsAdvancedPatterns |
SimpleModel | 9 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests\TestModels\SimpleModel | SimpleModel |
System.Data.Entity | 14 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\UnitTests | System.Data.Entity |
System.Data.Entity.Validation | 11 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\UnitTests\Validation | System.Data.Entity.Validation |
System.Data.Entity.Core.Common.Internal .Materialization | 1 type | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\UnitTests\Core\Common\Internal\Materialization | System.Data.Entity.Core.Common.Internal .Materialization |
System.Data.Entity.Core.EntityClient | 1 type | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\UnitTests\Core\EntityClient | System.Data.Entity.Core.EntityClient |
System.Data.Entity.Core.Metadata.Edm | 2 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\UnitTests\Core\Metadata\Edm | System.Data.Entity.Core.Metadata.Edm |
System.Data.Entity.Core.Objects | 1 type | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\UnitTests\Core\Objects | System.Data.Entity.Core.Objects |
System.Data.Entity.Core.Objects .DataClasses | 1 type | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\UnitTests\Core\Objects\DataClasses | System.Data.Entity.Core.Objects .DataClasses |
System.Data.Entity.Core.Objects.Internal | 1 type | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\UnitTests\Core\Objects\Internal | System.Data.Entity.Core.Objects.Internal |
System.Data.Entity.Infrastructure | 15 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\UnitTests\Infrastructure | System.Data.Entity.Infrastructure |
System.Data.Entity.ModelConfiguration .Conventions | 59 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\UnitTests\ModelConfiguration\Conventions\Configuration\Lightweight | System.Data.Entity.ModelConfiguration .Conventions |
System.Data.Entity.ModelConfiguration .Configuration | 12 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\UnitTests\ModelConfiguration\Configuration | System.Data.Entity.ModelConfiguration .Configuration |
System.Data.Entity.ModelConfiguration .Configuration.Properties.Navigation | 23 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\UnitTests\ModelConfiguration\Configuration\Properties\Navigation | System.Data.Entity.ModelConfiguration .Configuration.Properties.Navigation |
System.Data.Entity.ModelConfiguration .Edm | 35 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\UnitTests\ModelConfiguration\Edm | System.Data.Entity.ModelConfiguration .Edm |
System.Data.Entity.Internal | 10 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\UnitTests\Internal | System.Data.Entity.Internal |
System.Data.Entity.Internal.Linq | 1 type | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\UnitTests\Internal\Linq | System.Data.Entity.Internal.Linq |
System.Data.Entity.SqlServer.Utilities | 25 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\UnitTests\Utilities | System.Data.Entity.SqlServer.Utilities |
CmdLine.Tests | 9 types | \\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\UnitTests\CommandLine | CmdLine.Tests |
Statistics
Stat | typesDeclaredOutOfMainDir | mainDir |
---|---|---|
Sum: | 0 | 0 |
Average: | 0 | 0 |
Minimum: | 0 | 0 |
Maximum: | 0 | 0 |
Standard deviation: | 0 | 0 |
Variance: | 0 | 0 |
17160
.NET Framework Usage |
|
490
System |
|
![]() | Rule warning: Mark assemblies with assembly version |
warnif count > 0 from a in Application.Assemblies where
!a.HasAttribute ("System.Reflection.AssemblyVersionAttribute".AllowNoMatch())
select a
// The identity of an assembly is composed of
// the following information:
// - Assembly name
// - Version number
// - Culture
// - Public key (for strong-named assemblies).
// The .NET Framework uses the version number
// to uniquely identify an assembly, and to bind
// to types in strong-named assemblies. The
// version number is used together with version
// and publisher policy. By default, applications
// run only with the assembly version with
// which they were built.View Code Query or Rule BodyView Code Query or Rule Body
4 assemblies matched
assemblies | Full Name |
---|---|
EntityFramework.FunctionalTests .Transitional | EntityFramework.FunctionalTests .Transitional |
EntityFramework.FunctionalTests | EntityFramework.FunctionalTests |
EntityFramework.VBTests | EntityFramework.VBTests |
EntityFramework.UnitTests | EntityFramework.UnitTests |
Statistics
Stat |
---|
Sum: |
Average: |
Minimum: |
Maximum: |
Standard deviation: |
Variance: |
![]() | Rule warning: Mark assemblies with CLSCompliant |
warnif count > 0 from a in Application.Assemblies where
!a.HasAttribute ("System.CLSCompliantAttribute".AllowNoMatch())
select a
// The Common Language Specification (CLS) defines
// naming restrictions, data types, and rules to which
// assemblies must conform if they are to be used
// across programming languages. Good design dictates
// that all assemblies explicitly indicate CLS
// compliance with CLSCompliantAttribute. If the
// attribute is not present on an assembly, the
// assembly is not compliant.View Code Query or Rule BodyView Code Query or Rule Body
5 assemblies matched
assemblies | Full Name |
---|---|
EntityFramework.FunctionalTests .Transitional | EntityFramework.FunctionalTests .Transitional |
EntityFramework.FunctionalTests .ProviderAgnostic | EntityFramework.FunctionalTests .ProviderAgnostic |
EntityFramework.FunctionalTests | EntityFramework.FunctionalTests |
EntityFramework.VBTests | EntityFramework.VBTests |
EntityFramework.UnitTests | EntityFramework.UnitTests |
Statistics
Stat |
---|
Sum: |
Average: |
Minimum: |
Maximum: |
Standard deviation: |
Variance: |
![]() | Rule warning: Mark assemblies with ComVisible |
warnif count > 0 from a in Application.Assemblies where
!a.HasAttribute ("System.Runtime.InteropServices.ComVisibleAttribute".AllowNoMatch())
select a
// The ComVisibleAttribute attribute determines
// how COM clients access managed code. Good design
// dictates that assemblies explicitly indicate
// COM visibility. COM visibility can be set for
// an entire assembly and then overridden for
// individual types and type members. If the
// attribute is not present, the contents of
// the assembly are visible to COM clients.View Code Query or Rule BodyView Code Query or Rule Body
4 assemblies matched
assemblies | Full Name |
---|---|
EntityFramework.FunctionalTests .Transitional | EntityFramework.FunctionalTests .Transitional |
EntityFramework.FunctionalTests | EntityFramework.FunctionalTests |
EntityFramework.VBTests | EntityFramework.VBTests |
EntityFramework.UnitTests | EntityFramework.UnitTests |
Statistics
Stat |
---|
Sum: |
Average: |
Minimum: |
Maximum: |
Standard deviation: |
Variance: |
![]() | Rule warning: Mark attributes with AttributeUsageAttribute |
warnif count > 0 from t in Application.Types where
t.DeriveFrom ("System.Attribute".AllowNoMatch()) &&
!t.HasAttribute ("System.AttributeUsageAttribute".AllowNoMatch())
select t
// When defining a custom attribute, mark it using
// AttributeUsageAttribute to indicate where in the
// source code the custom attribute can be applied.
// An attribute's meaning and intended usage will
// determine its valid locations in code. For example,
// if you are defining an attribute that identifies
// the person responsible for maintaining and enhancing
// each type in a library, and responsibility is
// always assigned at the type level, compilers should
// allow the attribute on classes, enumerations,
// and interfaces, but should not allow it on methods,
// events, or properties. Organizational policies and
// procedures would dictate whether the attribute
// should be allowed on assemblies.View Code Query or Rule BodyView Code Query or Rule Body
5 types matched
types | Full Name |
---|---|
ExtendedFactAttribute | System.Data.Entity.ExtendedFactAttribute |
PartialTrustFactAttribute | System.Data.Entity .PartialTrustFactAttribute |
PartialTrustFixtureAttribute | System.Data.Entity .PartialTrustFixtureAttribute |
UseDefaultExecutionStrategyAttribute | System.Data.Entity.TestHelpers .UseDefaultExecutionStrategyAttribute |
MigrationsTheoryAttribute | System.Data.Entity.Migrations .MigrationsTheoryAttribute |
Statistics
Stat |
---|
Sum: |
Average: |
Minimum: |
Maximum: |
Standard deviation: |
Variance: |
![]() | Rule warning: Remove calls to GC.Collect() |
warnif count > 0
let gcCollectMethods = ThirdParty.Methods.WithFullNameIn(
"System.GC.Collect()",
"System.GC.Collect(Int32)",
"System.GC.Collect(Int32,GCCollectionMode)")
from m in Application.Methods.UsingAny(gcCollectMethods)
select m
// It is preferrable to avoid calling GC.Collect()
// explicitely in order to avoid some performance pitfall.
// More in information on this here:
// http://blogs.msdn.com/ricom/archive/2004/11/29/271829.aspxView Code Query or Rule BodyView Code Query or Rule Body
3 methods matched
methods | Full Name |
---|---|
TransactionHandler_is_disposed_even_if_t he_context_is_not() | System.Data.Entity.Interception .CommitFailureTests .TransactionHandler_is_disposed_even_if_ the_context_is_not() |
DatabaseLogFormatter_is_disposed_even_if _the_context_is_not() | System.Data.Entity.Interception .DatabaseLogFormatterTests .DatabaseLogFormatter_is_disposed_even_i f_the_context_is_not() |
<Metadata_does_not_get_garbage_collected _if_references_are_alive>b__0() | System.Data.Entity.Metadata .MetadataCachingTests. <Metadata_does_not_get_garbage_collected _if_references_are_alive>b__0() |
Statistics
Stat |
---|
Sum: |
Average: |
Minimum: |
Maximum: |
Standard deviation: |
Variance: |
![]() | Rule warning: Enum Storage should be Int32 |
warnif count > 0 from f in Fields where
f.Name == @"value__" &&
!f.FieldTypeIs ("System.Int32".AllowNoMatch()) &&
!f.IsThirdParty
select new { f, f.SizeOfInst, f.FieldType }
// An enumeration is a value type that defines
// a set of related named constants. By default,
// the System.Int32 data type is used to store
// the constant value. Even though you can change
// this underlying type, it is not necessary or
// recommended for most scenarios. Note that there
// is no significant performance gain in using
// a data type smaller than Int32. If you cannot
// use the default data type, you should use one
// of the CLS-compliant integral types, Byte,
// Int16, Int32, or Int64, to ensure that all of
// the enumeration's values are representable in
// CLS-compliant programming languages.View Code Query or Rule BodyView Code Query or Rule Body
14 fields matched
fields | Size of instance | FieldType | Full Name |
---|---|---|---|
value__ | 2 | Int16 | FunctionalTests .EnumsScenarioTests+WithFlags.value__ |
value__ | 4 | UInt32 | FunctionalTests .EnumsScenarioTests+Unsigned.value__ |
value__ | 1 | Byte | System.Data.Entity.TestModels.ArubaModel .ArubaByteEnum.value__ |
value__ | 8 | Int64 | ProductivityApiTests .EnumTests+LongBreedType.value__ |
value__ | 8 | Int64 | ProductivityApiTests .EnumTests+LongEnumNotInModel.value__ |
value__ | 8 | UInt64 | ProductivityApiTests .EnumTests+ULongEnumNotInModel.value__ |
value__ | 1 | Byte | System.Data.Entity.Core.Common .CommandTrees.CardSuite.value__ |
value__ | 1 | Byte | System.Data.Entity.Core.Common .CommandTrees.Enums .MembersWithSameValues.CardSuite.value__ |
value__ | 1 | Byte | System.Data.Entity.Core.Common .CommandTrees.Enums.MissingMember .CardSuite.value__ |
value__ | 1 | Byte | System.Data.Entity.Core.Common .CommandTrees.Enums.AdditionalMember .CardSuite.value__ |
value__ | 8 | UInt64 | System.Data.Entity.Core.Common .CommandTrees.Enums .NonEdmCompatibleUnderlyingType .CardSuite.value__ |
value__ | 1 | Byte | System.Data.Entity.Core.Common .CommandTrees.Enums.NonExistingMember .CardSuite.value__ |
value__ | 1 | Byte | System.Data.Entity.Core.Common .CommandTrees.Enums.DifferentMemberValue .CardSuite.value__ |
value__ | 1 | Byte | System.Data.Entity.Core.Common .CommandTrees.Enums.SwapedMembersValues .CardSuite.value__ |
Statistics
Stat | Size of instance | FieldType |
---|---|---|
Sum: | 46 | 0 |
Average: | 3.29 | 0 |
Minimum: | 1 | 0 |
Maximum: | 8 | 0 |
Standard deviation: | 3.08 | 0 |
Variance: | 9.49 | 0 |
![]() | Rule warning: Do not raise too general exception types |
warnif count > 0 from m in Application.Methods where
// Test for non-constructor, else this rule
// would warn on ctor of classes that derive
// from these exception types.
!m.IsConstructor && (
m.CreateA("System.Exception".AllowNoMatch()) ||
m.CreateA("System.ApplicationException".AllowNoMatch()) ||
m.CreateA("System.SystemException".AllowNoMatch()) )
select m
View Code Query or Rule BodyView Code Query or Rule Body
111 methods matched
methods | Full Name |
---|---|
All_functional_tests_implement_TestBase( ) | System.Data.Entity.Meta.MetaTests .All_functional_tests_implement_TestBase () |
set_Products(DbSet<Product>) | ProductivityApiTests .DbContextTests+ExceptionFromSetSetterVa riant.set_Products(DbSet<Product>) |
InitializeDatabase(TContext) | System.Data.Entity .MultiThreadingTests+ThreadSafeCountingI nitializer<TContext>.InitializeDatabase (TContext) |
<RetryLazy_keeps_trying_to_initialize_un til_an_attempt_succeeds>b__23(String) | System.Data.Entity.MultiThreadingTests+< >c__DisplayClass26. <RetryLazy_keeps_trying_to_initialize_un til_an_attempt_succeeds>b__23(String) |
<RetryLazy_uses_the_given_input_for_each _attempt_at_initialization_until_an_atte mpt_succeeds>b__2a(Int32) | System.Data.Entity.MultiThreadingTests+< >c__DisplayClass2c. <RetryLazy_uses_the_given_input_for_each _attempt_at_initialization_until_an_atte mpt_succeeds>b__2a(Int32) |
<RetryAction_keeps_trying_to_run_the_act ion_until_an_attempt_succeeds>b__36 (String) | System.Data.Entity.MultiThreadingTests+< >c__DisplayClass39. <RetryAction_keeps_trying_to_run_the_act ion_until_an_attempt_succeeds>b__36 (String) |
<RetryAction_uses_the_given_input_for_ea ch_attempt_until_an_attempt_succeeds >b__3c(Int32) | System.Data.Entity.MultiThreadingTests+< >c__DisplayClass3e. <RetryAction_uses_the_given_input_for_ea ch_attempt_until_an_attempt_succeeds >b__3c(Int32) |
TestDbValidationExceptionCtor(Type[]) | System.Data.Entity.Validation .DbEntityValidationExceptionTests .TestDbValidationExceptionCtor(Type[]) |
DbEntityValidationException_serializatio n_and_deserialization() | System.Data.Entity.Validation .DbEntityValidationExceptionTests .DbEntityValidationException_serializati on_and_deserialization() |
DbUnexpectedValidationException_string_e xception_constructor() | System.Data.Entity.Validation .DbUnexpectedValidationExceptionTests .DbUnexpectedValidationException_string_ exception_constructor() |
Constructor_uses_given_message_and_inner _exception_and_sets_up_serialization() | System.Data.Entity.Core .EntitySqlExceptionTests .Constructor_uses_given_message_and_inne r_exception_and_sets_up_serialization() |
Create_uses_given_message_inner_exceptio n_and_error_context_and_sets_up_serializ ation() | System.Data.Entity.Core .EntitySqlExceptionTests .Create_uses_given_message_inner_excepti on_and_error_context_and_sets_up_seriali zation() |
Create_allows_all_state_to_be_set_and_se ts_up_serialization() | System.Data.Entity.Core .EntitySqlExceptionTests .Create_allows_all_state_to_be_set_and_s ets_up_serialization() |
Constructors_can_be_passed_null_or_empty _message_without_throwing() | System.Data.Entity.Core .EntityCommandCompilationExceptionTests .Constructors_can_be_passed_null_or_empt y_message_without_throwing() |
Constructors_can_be_passed_null_or_empty _message_without_throwing() | System.Data.Entity.Core .EntityCommandExecutionExceptionTests .Constructors_can_be_passed_null_or_empt y_message_without_throwing() |
Constructors_can_be_passed_null_or_empty _message_without_throwing() | System.Data.Entity.Core .EntityExceptionTests .Constructors_can_be_passed_null_or_empt y_message_without_throwing() |
PropertyConstraintException_exposes_publ ic_string_and_inner_exception_constructo r() | System.Data.Entity.Core .PropertyConstraintExceptionTests .PropertyConstraintException_exposes_pub lic_string_and_inner_exception_construct or() |
PropertyConstraintException_exposes_publ ic_string_property_name_and_inner_except ion_constructor() | System.Data.Entity.Core .PropertyConstraintExceptionTests .PropertyConstraintException_exposes_pub lic_string_property_name_and_inner_excep tion_constructor() |
Deserialized_exception_can_be_serialized _and_deserialized_again() | System.Data.Entity.Core .PropertyConstraintExceptionTests .Deserialized_exception_can_be_serialize d_and_deserialized_again() |
<PropertyConstraintException_string_prop erty_name_and_inner_exception_constructo r_throws_if_passed_null_property_name >b__2() | System.Data.Entity.Core .PropertyConstraintExceptionTests. <PropertyConstraintException_string_prop erty_name_and_inner_exception_constructo r_throws_if_passed_null_property_name >b__2() |
GetSpatialServices_throws_if_resolver_re turns_null_and_provider_throws() | System.Data.Entity.Core.Common .DbProviderServicesTests+GetSpatialServi ces .GetSpatialServices_throws_if_resolver_r eturns_null_and_provider_throws() |
Obsolete_GetSpatialServices_throws_if_re solver_returns_null_and_provider_throws( ) | System.Data.Entity.Core.Common .DbProviderServicesTests+GetSpatialServi ces .Obsolete_GetSpatialServices_throws_if_r esolver_returns_null_and_provider_throws () |
<Validation_error_not_reported_for_types _marked_as_invalid>b__17(Object ,DataModelErrorEventArgs) | System.Data.Entity.Core.Metadata.Edm .SsdlSerializerTests. <Validation_error_not_reported_for_types _marked_as_invalid>b__17(Object ,DataModelErrorEventArgs) |
DbUpdateException_exposes_public_string_ and_inner_exception_constructor() | System.Data.Entity.Infrastructure .DbUpdateExceptionTests .DbUpdateException_exposes_public_string _and_inner_exception_constructor() |
Constructors_can_be_passed_null_or_empty _message_without_throwing() | System.Data.Entity.Infrastructure .CommitFailedExceptionTests .Constructors_can_be_passed_null_or_empt y_message_without_throwing() |
DbUpdateConcurrencyException_exposes_pub lic_string_and_inner_exception_construct or() | System.Data.Entity.Infrastructure .DbUpdateConcurrencyExceptionTests .DbUpdateConcurrencyException_exposes_pu blic_string_and_inner_exception_construc tor() |
Cloning_the_interception_context_preserv es_contextual_information_but_not_mutabl e_state() | System.Data.Entity.Infrastructure .Interception .EnlistTransactionInterceptionContextTes ts .Cloning_the_interception_context_preser ves_contextual_information_but_not_mutab le_state() |
Cloning_the_interception_context_preserv es_contextual_information_but_not_mutabl e_state() | System.Data.Entity.Infrastructure .Interception .DbConnectionPropertyInterceptionContext Tests .Cloning_the_interception_context_preser ves_contextual_information_but_not_mutab le_state() |
Cloning_the_interception_context_preserv es_contextual_information_but_not_mutabl e_state() | System.Data.Entity.Infrastructure .Interception .DbTransactionInterceptionContextTests+G eneric .Cloning_the_interception_context_preser ves_contextual_information_but_not_mutab le_state() |
Cloning_the_interception_context_preserv es_contextual_information_but_not_mutabl e_state() | System.Data.Entity.Infrastructure .Interception .DbTransactionInterceptionContextTests+N onGeneric .Cloning_the_interception_context_preser ves_contextual_information_but_not_mutab le_state() |
Cloning_the_interception_context_preserv es_contextual_information_but_not_mutabl e_state() | System.Data.Entity.Infrastructure .Interception .DbConnectionInterceptionContextTests+Ge neric .Cloning_the_interception_context_preser ves_contextual_information_but_not_mutab le_state() |
Cloning_the_interception_context_preserv es_contextual_information_but_not_mutabl e_state() | System.Data.Entity.Infrastructure .Interception .DbConnectionInterceptionContextTests+No nGeneric .Cloning_the_interception_context_preser ves_contextual_information_but_not_mutab le_state() |
Cloning_the_interception_context_preserv es_contextual_information_but_not_mutabl e_state() | System.Data.Entity.Infrastructure .Interception .BeginTransactionInterceptionContextTest s .Cloning_the_interception_context_preser ves_contextual_information_but_not_mutab le_state() |
Dispatch_method_does_not_execute_command _if_result_is_already_set() | System.Data.Entity.Infrastructure .Interception .DbCommandDispatcherTests+NonQuery .Dispatch_method_does_not_execute_comman d_if_result_is_already_set() |
Dispatch_method_executes_command_and_dis patches_to_interceptors_even_if_exceptio n_thrown() | System.Data.Entity.Infrastructure .Interception .DbCommandDispatcherTests+NonQuery .Dispatch_method_executes_command_and_di spatches_to_interceptors_even_if_excepti on_thrown() |
Dispatch_method_does_not_execute_command _if_exception_is_already_set() | System.Data.Entity.Infrastructure .Interception .DbCommandDispatcherTests+NonQuery .Dispatch_method_does_not_execute_comman d_if_exception_is_already_set() |
Dispatch_method_does_not_execute_command _if_explicitly_suppressed_and_can_still_ be_made_to_throw() | System.Data.Entity.Infrastructure .Interception .DbCommandDispatcherTests+NonQuery .Dispatch_method_does_not_execute_comman d_if_explicitly_suppressed_and_can_still _be_made_to_throw() |
Dispatch_method_swallows_exception_if_in terceptor_sets_Exception_to_null() | System.Data.Entity.Infrastructure .Interception .DbCommandDispatcherTests+NonQuery .Dispatch_method_swallows_exception_if_i nterceptor_sets_Exception_to_null() |
Dispatch_method_does_not_populate_given_ interception_context_with_execution_resu lts() | System.Data.Entity.Infrastructure .Interception .DbCommandDispatcherTests+NonQuery .Dispatch_method_does_not_populate_given _interception_context_with_execution_res ults() |
<Dispatch_method_executes_command_and_di spatches_to_interceptors_even_if_excepti on_thrown>b__13(DbCommand ,DbCommandInterceptionContext<Int32>) | System.Data.Entity.Infrastructure .Interception .DbCommandDispatcherTests+NonQuery. <Dispatch_method_executes_command_and_di spatches_to_interceptors_even_if_excepti on_thrown>b__13(DbCommand ,DbCommandInterceptionContext<Int32>) |
<Dispatch_method_does_not_execute_comman d_if_exception_is_already_set>b__18 (DbCommand,DbCommandInterceptionContext <Int32>) | System.Data.Entity.Infrastructure .Interception .DbCommandDispatcherTests+NonQuery. <Dispatch_method_does_not_execute_comman d_if_exception_is_already_set>b__18 (DbCommand,DbCommandInterceptionContext <Int32>) |
<Dispatch_method_does_not_execute_comman d_if_exception_is_already_set>b__19 (DbCommand,DbCommandInterceptionContext <Int32>) | System.Data.Entity.Infrastructure .Interception .DbCommandDispatcherTests+NonQuery. <Dispatch_method_does_not_execute_comman d_if_exception_is_already_set>b__19 (DbCommand,DbCommandInterceptionContext <Int32>) |
<Dispatch_method_does_not_execute_comman d_if_explicitly_suppressed_and_can_still _be_made_to_throw>b__20(DbCommand ,DbCommandInterceptionContext<Int32>) | System.Data.Entity.Infrastructure .Interception .DbCommandDispatcherTests+NonQuery. <Dispatch_method_does_not_execute_comman d_if_explicitly_suppressed_and_can_still _be_made_to_throw>b__20(DbCommand ,DbCommandInterceptionContext<Int32>) |
Dispatch_method_does_not_execute_command _if_result_is_already_set() | System.Data.Entity.Infrastructure .Interception .DbCommandDispatcherTests+Scalar .Dispatch_method_does_not_execute_comman d_if_result_is_already_set() |
Dispatch_method_executes_command_and_dis patches_to_interceptors_even_if_exceptio n_thrown() | System.Data.Entity.Infrastructure .Interception .DbCommandDispatcherTests+Scalar .Dispatch_method_executes_command_and_di spatches_to_interceptors_even_if_excepti on_thrown() |
Dispatch_method_does_not_populate_given_ interception_context_with_execution_resu lts() | System.Data.Entity.Infrastructure .Interception .DbCommandDispatcherTests+Scalar .Dispatch_method_does_not_populate_given _interception_context_with_execution_res ults() |
<Dispatch_method_executes_command_and_di spatches_to_interceptors_even_if_excepti on_thrown>b__39(DbCommand ,DbCommandInterceptionContext<Object>) | System.Data.Entity.Infrastructure .Interception .DbCommandDispatcherTests+Scalar. <Dispatch_method_executes_command_and_di spatches_to_interceptors_even_if_excepti on_thrown>b__39(DbCommand ,DbCommandInterceptionContext<Object>) |
Dispatch_method_does_not_execute_command _if_result_is_already_set() | System.Data.Entity.Infrastructure .Interception .DbCommandDispatcherTests+Reader .Dispatch_method_does_not_execute_comman d_if_result_is_already_set() |
Dispatch_method_executes_command_and_dis patches_to_interceptors_even_if_exceptio n_thrown() | System.Data.Entity.Infrastructure .Interception .DbCommandDispatcherTests+Reader .Dispatch_method_executes_command_and_di spatches_to_interceptors_even_if_excepti on_thrown() |
Dispatch_method_does_not_populate_given_ interception_context_with_execution_resu lts() | System.Data.Entity.Infrastructure .Interception .DbCommandDispatcherTests+Reader .Dispatch_method_does_not_populate_given _interception_context_with_execution_res ults() |
<Dispatch_method_executes_command_and_di spatches_to_interceptors_even_if_excepti on_thrown>b__4a(DbCommand ,DbCommandInterceptionContext <DbDataReader>) | System.Data.Entity.Infrastructure .Interception .DbCommandDispatcherTests+Reader. <Dispatch_method_executes_command_and_di spatches_to_interceptors_even_if_excepti on_thrown>b__4a(DbCommand ,DbCommandInterceptionContext <DbDataReader>) |
Dispatch_method_does_not_populate_given_ interception_context_with_execution_resu lts() | System.Data.Entity.Infrastructure .Interception .DbCommandDispatcherTests+AsyncNonQuery .Dispatch_method_does_not_populate_given _interception_context_with_execution_res ults() |
<Dispatch_method_does_not_execute_comman d_if_result_is_already_set>b__5a() | System.Data.Entity.Infrastructure .Interception .DbCommandDispatcherTests+AsyncNonQuery. <Dispatch_method_does_not_execute_comman d_if_result_is_already_set>b__5a() |
<Dispatch_method_executes_command_and_di spatches_to_interceptors_even_if_operati on_throws>b__62() | System.Data.Entity.Infrastructure .Interception .DbCommandDispatcherTests+AsyncNonQuery. <Dispatch_method_executes_command_and_di spatches_to_interceptors_even_if_operati on_throws>b__62() |
<Dispatch_method_executes_command_and_di spatches_to_interceptors_even_if_operati on_throws>b__63(DbCommand ,DbCommandInterceptionContext<Int32>) | System.Data.Entity.Infrastructure .Interception .DbCommandDispatcherTests+AsyncNonQuery. <Dispatch_method_executes_command_and_di spatches_to_interceptors_even_if_operati on_throws>b__63(DbCommand ,DbCommandInterceptionContext<Int32>) |
<Dispatch_method_does_not_execute_comman d_if_exception_is_already_set>b__72() | System.Data.Entity.Infrastructure .Interception .DbCommandDispatcherTests+AsyncNonQuery. <Dispatch_method_does_not_execute_comman d_if_exception_is_already_set>b__72() |
<Dispatch_method_does_not_execute_comman d_if_exception_is_already_set>b__73 (DbCommand,DbCommandInterceptionContext <Int32>) | System.Data.Entity.Infrastructure .Interception .DbCommandDispatcherTests+AsyncNonQuery. <Dispatch_method_does_not_execute_comman d_if_exception_is_already_set>b__73 (DbCommand,DbCommandInterceptionContext <Int32>) |
<Dispatch_method_does_not_execute_comman d_if_exception_is_already_set>b__74 (DbCommand,DbCommandInterceptionContext <Int32>) | System.Data.Entity.Infrastructure .Interception .DbCommandDispatcherTests+AsyncNonQuery. <Dispatch_method_does_not_execute_comman d_if_exception_is_already_set>b__74 (DbCommand,DbCommandInterceptionContext <Int32>) |
<Dispatch_method_does_not_execute_comman d_if_explicitly_suppressed_and_can_still _be_made_to_throw>b__7b() | System.Data.Entity.Infrastructure .Interception .DbCommandDispatcherTests+AsyncNonQuery. <Dispatch_method_does_not_execute_comman d_if_explicitly_suppressed_and_can_still _be_made_to_throw>b__7b() |
<Dispatch_method_does_not_execute_comman d_if_explicitly_suppressed_and_can_still _be_made_to_throw>b__7d(DbCommand ,DbCommandInterceptionContext<Int32>) | System.Data.Entity.Infrastructure .Interception .DbCommandDispatcherTests+AsyncNonQuery. <Dispatch_method_does_not_execute_comman d_if_explicitly_suppressed_and_can_still _be_made_to_throw>b__7d(DbCommand ,DbCommandInterceptionContext<Int32>) |
<Dispatch_method_swallows_exception_if_i nterceptor_sets_Exception_to_null>b__84( ) | System.Data.Entity.Infrastructure .Interception .DbCommandDispatcherTests+AsyncNonQuery. <Dispatch_method_swallows_exception_if_i nterceptor_sets_Exception_to_null>b__84( ) |
Dispatch_method_does_not_populate_given_ interception_context_with_execution_resu lts() | System.Data.Entity.Infrastructure .Interception .DbCommandDispatcherTests+AsyncScalar .Dispatch_method_does_not_populate_given _interception_context_with_execution_res ults() |
<Dispatch_method_does_not_execute_comman d_if_result_is_already_set>b__97() | System.Data.Entity.Infrastructure .Interception .DbCommandDispatcherTests+AsyncScalar. <Dispatch_method_does_not_execute_comman d_if_result_is_already_set>b__97() |
<Dispatch_method_executes_command_and_di spatches_to_interceptors_even_if_operati on_throws>b__9f() | System.Data.Entity.Infrastructure .Interception .DbCommandDispatcherTests+AsyncScalar. <Dispatch_method_executes_command_and_di spatches_to_interceptors_even_if_operati on_throws>b__9f() |
<Dispatch_method_executes_command_and_di spatches_to_interceptors_even_if_operati on_throws>b__a0(DbCommand ,DbCommandInterceptionContext<Object>) | System.Data.Entity.Infrastructure .Interception .DbCommandDispatcherTests+AsyncScalar. <Dispatch_method_executes_command_and_di spatches_to_interceptors_even_if_operati on_throws>b__a0(DbCommand ,DbCommandInterceptionContext<Object>) |
Dispatch_method_does_not_populate_given_ interception_context_with_execution_resu lts() | System.Data.Entity.Infrastructure .Interception .DbCommandDispatcherTests+AsyncReader .Dispatch_method_does_not_populate_given _interception_context_with_execution_res ults() |
<Dispatch_method_does_not_execute_comman d_if_result_is_already_set>b__ba() | System.Data.Entity.Infrastructure .Interception .DbCommandDispatcherTests+AsyncReader. <Dispatch_method_does_not_execute_comman d_if_result_is_already_set>b__ba() |
<Dispatch_method_executes_command_and_di spatches_to_interceptors_even_if_operati on_throws>b__c0() | System.Data.Entity.Infrastructure .Interception .DbCommandDispatcherTests+AsyncReader. <Dispatch_method_executes_command_and_di spatches_to_interceptors_even_if_operati on_throws>b__c0() |
<Dispatch_method_executes_command_and_di spatches_to_interceptors_even_if_operati on_throws>b__c1(DbCommand ,DbCommandInterceptionContext <DbDataReader>) | System.Data.Entity.Infrastructure .Interception .DbCommandDispatcherTests+AsyncReader. <Dispatch_method_executes_command_and_di spatches_to_interceptors_even_if_operati on_throws>b__c1(DbCommand ,DbCommandInterceptionContext <DbDataReader>) |
Cloning_the_interception_context_preserv es_contextual_information_but_not_mutabl e_state() | System.Data.Entity.Infrastructure .Interception .DbCommandInterceptionContextTests .Cloning_the_interception_context_preser ves_contextual_information_but_not_mutab le_state() |
Exception_can_be_mutated() | System.Data.Entity.Infrastructure .Interception .DbCommandInterceptionContextTests .Exception_can_be_mutated() |
Suppression_can_be_flagged_by_setting_Ex ception_before_execution() | System.Data.Entity.Infrastructure .Interception .DbCommandInterceptionContextTests .Suppression_can_be_flagged_by_setting_E xception_before_execution() |
LogResult_handles_failed_commands() | System.Data.Entity.Infrastructure .Interception .DatabaseLogFormatterTests+LogResult .LogResult_handles_failed_commands() |
LogResult_logs_elapsed_time_for_failed_c ommands() | System.Data.Entity.Infrastructure .Interception .DatabaseLogFormatterTests+LogResult .LogResult_logs_elapsed_time_for_failed_ commands() |
Committed_logs_exceptions() | System.Data.Entity.Infrastructure .Interception .DatabaseLogFormatterTests+Committed .Committed_logs_exceptions() |
RolledBack_logs_exceptions() | System.Data.Entity.Infrastructure .Interception .DatabaseLogFormatterTests+RolledBack .RolledBack_logs_exceptions() |
BeganTransaction_logs_exceptions() | System.Data.Entity.Infrastructure .Interception .DatabaseLogFormatterTests+BeganTransact ion.BeganTransaction_logs_exceptions() |
Closed_logs_exceptions() | System.Data.Entity.Infrastructure .Interception .DatabaseLogFormatterTests+Closed .Closed_logs_exceptions() |
Opened_logs_exceptions() | System.Data.Entity.Infrastructure .Interception .DatabaseLogFormatterTests+Opened .Opened_logs_exceptions() |
Opened_logs_exceptions_async() | System.Data.Entity.Infrastructure .Interception .DatabaseLogFormatterTests+Opened .Opened_logs_exceptions_async() |
OriginalException_can_be_changed() | System.Data.Entity.Infrastructure .Interception .InterceptionContextMutableDataTests .OriginalException_can_be_changed() |
Exception_can_be_changed_after_execution _without_setting_IsExecutionSuppressed() | System.Data.Entity.Infrastructure .Interception .InterceptionContextMutableDataTests .Exception_can_be_changed_after_executio n_without_setting_IsExecutionSuppressed( ) |
Setting_Exception_before_execution_cause s_IsExecutionSuppressed_to_be_set() | System.Data.Entity.Infrastructure .Interception .InterceptionContextMutableDataTests .Setting_Exception_before_execution_caus es_IsExecutionSuppressed_to_be_set() |
SetExceptionThrown_sets_Exception_and_Or iginalException_and_marks_operation_as_e xecuted() | System.Data.Entity.Infrastructure .Interception .InterceptionContextMutableDataTests .SetExceptionThrown_sets_Exception_and_O riginalException_and_marks_operation_as_ executed() |
<Execution_of_operation_can_be_suppresse d_by_setting_result_with_everything_else _still_happening>b__3c(Object ,DbCommandInterceptionContext<String>) | System.Data.Entity.Infrastructure .Interception .InternalDispatcherTests+Dispatch. <Execution_of_operation_can_be_suppresse d_by_setting_result_with_everything_else _still_happening>b__3c(Object ,DbCommandInterceptionContext<String>) |
<Execution_of_operation_can_be_suppresse d_by_setting_exception_with_everything_e lse_still_happening>b__48 (DbCommandInterceptionContext<String>) | System.Data.Entity.Infrastructure .Interception .InternalDispatcherTests+Dispatch. <Execution_of_operation_can_be_suppresse d_by_setting_exception_with_everything_e lse_still_happening>b__48 (DbCommandInterceptionContext<String>) |
<Execution_of_operation_can_be_suppresse d_explicitly_with_everything_else_still_ happening>b__5b(Object ,DbCommandInterceptionContext<String>) | System.Data.Entity.Infrastructure .Interception .InternalDispatcherTests+Dispatch. <Execution_of_operation_can_be_suppresse d_explicitly_with_everything_else_still_ happening>b__5b(Object ,DbCommandInterceptionContext<String>) |
<Operation_Dispatch_can_change_exception _thrown>b__7c (DbCommandInterceptionContext<String>) | System.Data.Entity.Infrastructure .Interception .InternalDispatcherTests+Dispatch. <Operation_Dispatch_can_change_exception _thrown>b__7c (DbCommandInterceptionContext<String>) |
<Operation_Dispatch_can_prevent_exceptio n_from_being_thrown_and_return_result_in stead>b__8e(Object ,DbCommandInterceptionContext<String>) | System.Data.Entity.Infrastructure .Interception .InternalDispatcherTests+Dispatch. <Operation_Dispatch_can_prevent_exceptio n_from_being_thrown_and_return_result_in stead>b__8e(Object ,DbCommandInterceptionContext<String>) |
<Operation_Dispatch_is_aborted_if_Execut ing_interceptor_throws_exception>b__9a (DbCommandInterceptionContext<String>) | System.Data.Entity.Infrastructure .Interception .InternalDispatcherTests+Dispatch. <Operation_Dispatch_is_aborted_if_Execut ing_interceptor_throws_exception>b__9a (DbCommandInterceptionContext<String>) |
<Operation_Dispatch_is_aborted_if_Execut ed_interceptor_throws_exception>b__a9 (DbCommandInterceptionContext<String>) | System.Data.Entity.Infrastructure .Interception .InternalDispatcherTests+Dispatch. <Operation_Dispatch_is_aborted_if_Execut ed_interceptor_throws_exception>b__a9 (DbCommandInterceptionContext<String>) |
<Execution_of_async_operation_can_be_sup pressed_by_setting_exception_with_everyt hing_else_still_happening>b__da (DbCommandInterceptionContext<String>) | System.Data.Entity.Infrastructure .Interception .InternalDispatcherTests+Dispatch. <Execution_of_async_operation_can_be_sup pressed_by_setting_exception_with_everyt hing_else_still_happening>b__da (DbCommandInterceptionContext<String>) |
<Async_Dispatch_dispatches_to_all_regist ered_interceptors_even_if_exception_thro wn>b__107() | System.Data.Entity.Infrastructure .Interception .InternalDispatcherTests+Dispatch. <Async_Dispatch_dispatches_to_all_regist ered_interceptors_even_if_exception_thro wn>b__107() |
<Async_Dispatch_can_change_exception_thr own>b__118(DbCommandInterceptionContext <String>) | System.Data.Entity.Infrastructure .Interception .InternalDispatcherTests+Dispatch. <Async_Dispatch_can_change_exception_thr own>b__118(DbCommandInterceptionContext <String>) |
<Async_Dispatch_can_change_exception_thr own>b__11a() | System.Data.Entity.Infrastructure .Interception .InternalDispatcherTests+Dispatch. <Async_Dispatch_can_change_exception_thr own>b__11a() |
<Async_Dispatch_can_prevent_exception_fr om_being_thrown_and_return_result_instea d>b__12d() | System.Data.Entity.Infrastructure .Interception .InternalDispatcherTests+Dispatch. <Async_Dispatch_can_prevent_exception_fr om_being_thrown_and_return_result_instea d>b__12d() |
<Async_Dispatch_is_aborted_if_Executing_ interceptor_throws_exception>b__14f (DbCommandInterceptionContext<String>) | System.Data.Entity.Infrastructure .Interception .InternalDispatcherTests+Dispatch. <Async_Dispatch_is_aborted_if_Executing_ interceptor_throws_exception>b__14f (DbCommandInterceptionContext<String>) |
<Async_Dispatch_creates_faulted_task_if_ Executed_interceptor_throws_exception >b__161(DbCommandInterceptionContext <String>) | System.Data.Entity.Infrastructure .Interception .InternalDispatcherTests+Dispatch. <Async_Dispatch_creates_faulted_task_if_ Executed_interceptor_throws_exception >b__161(DbCommandInterceptionContext <String>) |
<Execution_of_operation_can_be_suppresse d_by_setting_exception_with_everything_e lse_still_happening>b__4c(Object ,DbCommandInterceptionContext<String>) | System.Data.Entity.Infrastructure .Interception .InternalDispatcherTests+Dispatch+< >c__DisplayClass53. <Execution_of_operation_can_be_suppresse d_by_setting_exception_with_everything_e lse_still_happening>b__4c(Object ,DbCommandInterceptionContext<String>) |
<Operation_Dispatch_dispatches_to_all_re gistered_interceptors_even_if_exception_ thrown>b__6f(Object ,DbCommandInterceptionContext<String>) | System.Data.Entity.Infrastructure .Interception .InternalDispatcherTests+Dispatch+< >c__DisplayClass76. <Operation_Dispatch_dispatches_to_all_re gistered_interceptors_even_if_exception_ thrown>b__6f(Object ,DbCommandInterceptionContext<String>) |
Statistics
Stat |
---|
Sum: |
Average: |
Minimum: |
Maximum: |
Standard deviation: |
Variance: |
![]() | Rule warning: Do not raise reserved exception types |
warnif count > 0
let reservedExceptions = ThirdParty.Types.WithFullNameIn(
"System.ExecutionEngineException",
"System.IndexOutOfRangeException",
"System.NullReferenceException",
"System.OutOfMemoryException",
"System.StackOverflowException",
"System.InvalidProgramException",
"System.AccessViolationException",
"System.CannotUnloadAppDomainException",
"System.BadImageFormatException",
"System.DataMisalignedException")
from m in Application.Methods.ThatCreateAny(reservedExceptions)
let reservedExceptionsCreated = reservedExceptions.Where(t => m.IsUsing(t))
select new { m, reservedExceptionsCreated }View Code Query or Rule BodyView Code Query or Rule Body
1 methods matched
method | reservedExceptionsCreated | Full Name |
---|---|---|
CreateInternalPropertyEntryForNullParent (String) | 1 type | System.Data.Entity.Internal.MockHelper .CreateInternalPropertyEntryForNullParen t(String) |
Statistics
Stat | reservedExceptionsCreated |
---|---|
Sum: | 0 |
Average: | 0 |
Minimum: | 0 |
Maximum: | 0 |
Standard deviation: | 0 |
Variance: | 0 |
![]() | Rule warning: Uri fields should be of type System.Uri |
warnif count > 0 from f in Application.Fields where
(f.NameLike (@"Uri$") ||
f.NameLike (@"Url$")) &&
!f.FieldTypeIs ("System.Uri".AllowNoMatch())
select new { f, f.FieldType }
// A field which name end with 'Uri' is deemed
// as representing a uri. Such field should be of
// type System.Uri.View Code Query or Rule BodyView Code Query or Rule Body
1 fields matched
field | FieldType | Full Name |
---|---|---|
_PageUrl | String | PageViewMm._PageUrl |
Statistics
Stat | FieldType |
---|---|
Sum: | 0 |
Average: | 0 |
Minimum: | 0 |
Maximum: | 0 |
Standard deviation: | 0 |
Variance: | 0 |
020
System.Collection |
|
![]() | Rule warning: Collection properties should be read only |
// A writable collection property allows a user to replace the collection with
// a completely different collection. A read-only property stops the collection
// from being replaced but still allows the individual members to be set.
// If replacing the collection is a goal, the preferred design pattern is to
// include a method to remove all the elements from the collection
// (with a call to the ICollection.Clear() method) and then re-populate the collection.
warnif count > 0
// First find collectionTypes
let collectionInterfaces = ThirdParty.Types.WithFullNameIn(
"System.Collections.ICollection", "System.Collections.Generic.ICollection<T>")
where collectionInterfaces.Count() > 0
let collectionTypes = Types.ThatImplementAny(collectionInterfaces)
.Union(collectionInterfaces).ToHashSet()
// Then find all property setters that have an associated
// getter that returns a collection type.
from propGetter in Application.Methods.Where(
m => m.IsPropertyGetter &&
m.ReturnType != null &&
collectionTypes.Contains(m.ReturnType))
let propSetter = propGetter.ParentType.Methods.WithSimpleName(
propGetter.SimpleName.Replace("get_","set_"))
.SingleOrDefault()
where propSetter != null &&
!propSetter.IsPrivate
select new { propSetter, propGetter.ReturnType }View Code Query or Rule BodyView Code Query or Rule Body
457 methods matched
methods | ReturnType | Full Name |
---|---|---|
set_TypeAttributes(Attribute[]) | Array | System.Data.Entity .DynamicTypeDescriptionConfiguration<T> .set_TypeAttributes(Attribute[]) |
set_E1s(ICollection <TableSplittingTests+E1>) | ICollection<T> | System.Data.Entity.CodeFirst .TableSplittingTests+E3.set_E1s (ICollection<TableSplittingTests+E1>) |
set_E2s(ICollection <TableSplittingTests+E2>) | ICollection<T> | System.Data.Entity.CodeFirst .TableSplittingTests+E3.set_E2s (ICollection<TableSplittingTests+E2>) |
set_Bs(ICollection<TableSplittingTests+B >) | ICollection<T> | System.Data.Entity.CodeFirst .TableSplittingTests+Z.set_Bs (ICollection<TableSplittingTests+B>) |
set_Cs(ICollection<TableSplittingTests+C >) | ICollection<T> | System.Data.Entity.CodeFirst .TableSplittingTests+Z.set_Cs (ICollection<TableSplittingTests+C>) |
set_Columns(ICollection<ColumnInfo>) | ICollection<T> | System.Data.Entity.Migrations.TableInfo .set_Columns(ICollection<ColumnInfo>) |
set_Constraints(ICollection <TableConstraintInfo>) | ICollection<T> | System.Data.Entity.Migrations.TableInfo .set_Constraints(ICollection <TableConstraintInfo>) |
set_KeyColumnUsages(ICollection <KeyColumnUsageInfo>) | ICollection<T> | System.Data.Entity.Migrations.ColumnInfo .set_KeyColumnUsages(ICollection <KeyColumnUsageInfo>) |
set_KeyColumnUsages(ICollection <KeyColumnUsageInfo>) | ICollection<T> | System.Data.Entity.Migrations .KeyConstraintInfo.set_KeyColumnUsages (ICollection<KeyColumnUsageInfo>) |
set_ReferentialConstraints(ICollection <ReferentialConstraintInfo>) | ICollection<T> | System.Data.Entity.Migrations .UniqueConstraintInfoBase .set_ReferentialConstraints(ICollection <ReferentialConstraintInfo>) |
set_Orders(ICollection<Order>) | ICollection<T> | System.Data.Entity.Migrations .MigrationsCustomer.set_Orders (ICollection<Order>) |
set_Photo(Byte[]) | Array | System.Data.Entity.Migrations .MigrationsCustomer.set_Photo(Byte[]) |
set_Version(Byte[]) | Array | System.Data.Entity.Migrations.Order .set_Version(Byte[]) |
set_OrderLines(ICollection<OrderLine>) | ICollection<T> | System.Data.Entity.Migrations.Order .set_OrderLines(ICollection<OrderLine>) |
set_Image(Byte[]) | Array | System.Data.Entity.Migrations .MigrationsProduct.set_Image(Byte[]) |
set_RowVersion(Byte[]) | Array | System.Data.Entity.Migrations .MigrationsStore.set_RowVersion(Byte[]) |
set_DirectReports(ICollection <MigrationsEmployee>) | ICollection<T> | System.Data.Entity.Migrations .MigrationsEmployee.set_DirectReports (ICollection<MigrationsEmployee>) |
set_ChildTransactions(ICollection <ProcessedTransaction>) | ICollection<T> | System.Data.Entity.Migrations .ProcessedTransaction .set_ChildTransactions(ICollection <ProcessedTransaction>) |
set_AssignedUsers(ICollection<User>) | ICollection<T> | System.Data.Entity.Migrations .UserRoles_v1.Role.set_AssignedUsers (ICollection<User>) |
set_AssignedRoles(ICollection<Role>) | ICollection<T> | System.Data.Entity.Migrations .UserRoles_v1.User.set_AssignedRoles (ICollection<Role>) |
set_AssignedUsers(ICollection<User2>) | ICollection<T> | System.Data.Entity.Migrations .UserRoles_v2.Role.set_AssignedUsers (ICollection<User2>) |
set_AssignedRoles(ICollection<Role>) | ICollection<T> | System.Data.Entity.Migrations .UserRoles_v2.User2.set_AssignedRoles (ICollection<Role>) |
set_Rights(ICollection <TableRenameManyManyRight>) | ICollection<T> | System.Data.Entity.Migrations .OSpaceRenames_v1 .TableRenameManyManyLeft1.set_Rights (ICollection<TableRenameManyManyRight>) |
set_Lefts(ICollection <TableRenameManyManyLeft1>) | ICollection<T> | System.Data.Entity.Migrations .OSpaceRenames_v1 .TableRenameManyManyRight.set_Lefts (ICollection<TableRenameManyManyLeft1>) |
set_Rights(ICollection <TableRenameManyManyRight>) | ICollection<T> | System.Data.Entity.Migrations .OSpaceRenames_v2 .TableRenameManyManyLeft2.set_Rights (ICollection<TableRenameManyManyRight>) |
set_Lefts(ICollection <TableRenameManyManyLeft2>) | ICollection<T> | System.Data.Entity.Migrations .OSpaceRenames_v2 .TableRenameManyManyRight.set_Lefts (ICollection<TableRenameManyManyLeft2>) |
set_Prop2(Byte[]) | Array | FunctionalTests .AdvancedMappingScenarioTests+MaxLengthP roperties.set_Prop2(Byte[]) |
set_DecimalDependents(ICollection <AdvancedMappingScenarioTests+DecimalDep endent>) | ICollection<T> | FunctionalTests .AdvancedMappingScenarioTests+DecimalKey .set_DecimalDependents(ICollection <AdvancedMappingScenarioTests+DecimalDep endent>) |
set_Organizations(ICollection <AdvancedMappingScenarioTests+Organizati on>) | ICollection<T> | FunctionalTests .AdvancedMappingScenarioTests+StockOrder .set_Organizations(ICollection <AdvancedMappingScenarioTests+Organizati on>) |
set_Locations(ICollection <AdvancedMappingScenarioTests+Location>) | ICollection<T> | FunctionalTests .AdvancedMappingScenarioTests+Organizati on.set_Locations(ICollection <AdvancedMappingScenarioTests+Location>) |
set_StockOrders(ICollection <AdvancedMappingScenarioTests+StockOrder >) | ICollection<T> | FunctionalTests .AdvancedMappingScenarioTests+Location .set_StockOrders(ICollection <AdvancedMappingScenarioTests+StockOrder >) |
set_DependentNavigation(ICollection <AssociationScenarioTests+Dependent_1729 49>) | ICollection<T> | FunctionalTests .AssociationScenarioTests+Principal_1729 49.set_DependentNavigation(ICollection <AssociationScenarioTests+Dependent_1729 49>) |
set_Lines(ICollection <AssociationScenarioTests+OrderLine_1819 09>) | ICollection<T> | FunctionalTests .AssociationScenarioTests+Order_181909 .set_Lines(ICollection <AssociationScenarioTests+OrderLine_1819 09>) |
set_DependentNavigation(ICollection <AssociationScenarioTests+Dependent_6927 >) | ICollection<T> | FunctionalTests .AssociationScenarioTests+Principal_6927 .set_DependentNavigation(ICollection <AssociationScenarioTests+Dependent_6927 >) |
set_DependentNavigation(ICollection <AssociationScenarioTests+DependentWithN ullableFk>) | ICollection<T> | FunctionalTests .AssociationScenarioTests+PrincipalWithN ullableFk.set_DependentNavigation (ICollection <AssociationScenarioTests+DependentWithN ullableFk>) |
set_Suppliers(ICollection <AssociationScenarioTests+SupplierManyTo ManyTableNaming>) | ICollection<T> | FunctionalTests .AssociationScenarioTests+ProductManyToM anyTableNaming.set_Suppliers(ICollection <AssociationScenarioTests+SupplierManyTo ManyTableNaming>) |
set_Products(ICollection <AssociationScenarioTests+ProductManyToM anyTableNaming>) | ICollection<T> | FunctionalTests .AssociationScenarioTests+SupplierManyTo ManyTableNaming.set_Products(ICollection <AssociationScenarioTests+ProductManyToM anyTableNaming>) |
set_Dependents1(ICollection <AssociationScenarioTests+Dependent14484 3>) | ICollection<T> | FunctionalTests .AssociationScenarioTests+Principal14484 3.set_Dependents1(ICollection <AssociationScenarioTests+Dependent14484 3>) |
set_DependentNavigation(ICollection <AssociationScenarioTests+DependentFkAbs tract>) | ICollection<T> | FunctionalTests .AssociationScenarioTests+PrincipalFkAbs tract.set_DependentNavigation (ICollection <AssociationScenarioTests+DependentFkAbs tract>) |
set_DerivedProperty1(Byte[]) | Array | FunctionalTests .AssociationScenarioTests+DerivedPrincip alFkAbstract.set_DerivedProperty1(Byte[] ) |
set_DerivedProperty1(Byte[]) | Array | FunctionalTests .AssociationScenarioTests+DerivedDepende ntSelfRef.set_DerivedProperty1(Byte[]) |
set_Key1(Byte[]) | Array | FunctionalTests .AssociationScenarioTests+PrincipalByteK ey.set_Key1(Byte[]) |
set_DependentForeignKeyPropertyNotFromCo nvention1(Byte[]) | Array | FunctionalTests .AssociationScenarioTests+DependentByteK ey .set_DependentForeignKeyPropertyNotFromC onvention1(Byte[]) |
set_Bases(ICollection <AssociationScenarioTests+SelfRefInherit edBase>) | ICollection<T> | FunctionalTests .AssociationScenarioTests+SelfRefInherit edDerived.set_Bases(ICollection <AssociationScenarioTests+SelfRefInherit edBase>) |
set_Dependents(ICollection <AssociationScenarioTests+CompositeAnnot atedDependent>) | ICollection<T> | FunctionalTests .AssociationScenarioTests+PrincipalWithC ompositeAnnotatedDependent .set_Dependents(ICollection <AssociationScenarioTests+CompositeAnnot atedDependent>) |
set_Dependents2(ICollection <AssociationScenarioTests+CompositeParti allyAnnotatedDependent>) | ICollection<T> | FunctionalTests .AssociationScenarioTests+PrincipalWithC ompositeAnnotatedDependent .set_Dependents2(ICollection <AssociationScenarioTests+CompositeParti allyAnnotatedDependent>) |
set_Children(ICollection <AssociationScenarioTests+TreeNode>) | ICollection<T> | FunctionalTests .AssociationScenarioTests+TreeNode .set_Children(ICollection <AssociationScenarioTests+TreeNode>) |
set_ChildrenItems(ICollection <AssociationScenarioTests+Item>) | ICollection<T> | FunctionalTests .AssociationScenarioTests+Item .set_ChildrenItems(ICollection <AssociationScenarioTests+Item>) |
set_Children(ICollection <AssociationScenarioTests+Person>) | ICollection<T> | FunctionalTests .AssociationScenarioTests+Person .set_Children(ICollection <AssociationScenarioTests+Person>) |
set_Parents(ICollection <AssociationScenarioTests+Person>) | ICollection<T> | FunctionalTests .AssociationScenarioTests+Person .set_Parents(ICollection <AssociationScenarioTests+Person>) |
set_Photos(ICollection <AssociationScenarioTests+Photo>) | ICollection<T> | FunctionalTests .AssociationScenarioTests+Album .set_Photos(ICollection <AssociationScenarioTests+Photo>) |
set_DerivedDependentNavigations (ICollection <AssociationScenarioTests+DerivedDepende nt>) | ICollection<T> | FunctionalTests .AssociationScenarioTests+DerivedPrincip al.set_DerivedDependentNavigations (ICollection <AssociationScenarioTests+DerivedDepende nt>) |
set_CDDeps(List <AssociationScenarioTests+CDDep>) | List<T> | FunctionalTests .AssociationScenarioTests+CDPrin .set_CDDeps(List <AssociationScenarioTests+CDDep>) |
set_Tags(ICollection <AssociationScenarioTests+Tag>) | ICollection<T> | FunctionalTests .AssociationScenarioTests+ProductA .set_Tags(ICollection <AssociationScenarioTests+Tag>) |
set_Products(ICollection <AssociationScenarioTests+ProductA>) | ICollection<T> | FunctionalTests .AssociationScenarioTests+Tag .set_Products(ICollection <AssociationScenarioTests+ProductA>) |
set_Picture(Byte[]) | Array | FunctionalTests .AssociationScenarioTests+TableSharing2 .set_Picture(Byte[]) |
set_Picture(Byte[]) | Array | FunctionalTests .AssociationScenarioTests+TableSharing2A .set_Picture(Byte[]) |
set_DependentNavigation(ICollection <AssociationScenarioTests+Repro150565_De pendent>) | ICollection<T> | FunctionalTests .AssociationScenarioTests+Repro150565_Ba seDependent.set_DependentNavigation (ICollection <AssociationScenarioTests+Repro150565_De pendent>) |
set_Roles(ICollection <AssociationScenarioTests+Role287430>) | ICollection<T> | FunctionalTests .AssociationScenarioTests+Person287430 .set_Roles(ICollection <AssociationScenarioTests+Role287430>) |
set_Persons(ICollection <AssociationScenarioTests+Person287430>) | ICollection<T> | FunctionalTests .AssociationScenarioTests+Role287430 .set_Persons(ICollection <AssociationScenarioTests+Person287430>) |
set_ByteArrayProp(Byte[]) | Array | FunctionalTests .BasicMappingScenarioTests+TypeClass .set_ByteArrayProp(Byte[]) |
set_Forecasts(ICollection <BasicMappingScenarioTests+HourlyForecas t>) | ICollection<T> | FunctionalTests .BasicMappingScenarioTests+DayRecord .set_Forecasts(ICollection <BasicMappingScenarioTests+HourlyForecas t>) |
set_Key1(Byte[]) | Array | FunctionalTests .BasicMappingScenarioTests+Repro136322_P rincipal.set_Key1(Byte[]) |
set_PrincipalKey1(Byte[]) | Array | FunctionalTests .BasicMappingScenarioTests+Repro136322_D ependent.set_PrincipalKey1(Byte[]) |
set_DependentNavigation(ICollection <BasicMappingScenarioTests+ThreeLevelDer ived>) | ICollection<T> | FunctionalTests .BasicMappingScenarioTests+ThreeLevelDer ived.set_DependentNavigation(ICollection <BasicMappingScenarioTests+ThreeLevelDer ived>) |
set_DependentNavigation(ICollection <BasicMappingScenarioTests+AbsDep_Depend ent>) | ICollection<T> | FunctionalTests .BasicMappingScenarioTests+AbsDep_Princi pal.set_DependentNavigation(ICollection <BasicMappingScenarioTests+AbsDep_Depend ent>) |
set_DerivedProperty1(Byte[]) | Array | FunctionalTests .BasicMappingScenarioTests+AbsDep_Derive dDependent.set_DerivedProperty1(Byte[]) |
set_DependentNavigation(ICollection <BasicMappingScenarioTests+Repro142682_D ependent>) | ICollection<T> | FunctionalTests .BasicMappingScenarioTests+Repro142682_P rincipal.set_DependentNavigation (ICollection <BasicMappingScenarioTests+Repro142682_D ependent>) |
set_DependentNavigation(ICollection <BasicMappingScenarioTests+Repro135563_2 _Dependent>) | ICollection<T> | FunctionalTests .BasicMappingScenarioTests+Repro135563_2 _BaseDependent.set_DependentNavigation (ICollection <BasicMappingScenarioTests+Repro135563_2 _Dependent>) |
set_DependentNavigation(ICollection <BasicMappingScenarioTests+Repro135563_3 _Dependent>) | ICollection<T> | FunctionalTests .BasicMappingScenarioTests+Repro135563_3 _BaseDependent.set_DependentNavigation (ICollection <BasicMappingScenarioTests+Repro135563_3 _Dependent>) |
set_Key1(Byte[]) | Array | FunctionalTests .BasicMappingScenarioTests+THABS_BasePri ncipal.set_Key1(Byte[]) |
set_THABS_DependentNavigation (ICollection <BasicMappingScenarioTests+THABS_Depende nt>) | ICollection<T> | FunctionalTests .BasicMappingScenarioTests+THABS_Princip al.set_THABS_DependentNavigation (ICollection <BasicMappingScenarioTests+THABS_Depende nt>) |
set_Children(ICollection <BasicMappingScenarioTests+Repro109916_C ollectible>) | ICollection<T> | FunctionalTests .BasicMappingScenarioTests+Repro109916_B aseEntity.set_Children(ICollection <BasicMappingScenarioTests+Repro109916_C ollectible>) |
set_DependentNavigation(ICollection <BasicMappingScenarioTests+Repro150248_D ependent>) | ICollection<T> | FunctionalTests .BasicMappingScenarioTests+Repro150248_P rincipal.set_DependentNavigation (ICollection <BasicMappingScenarioTests+Repro150248_D ependent>) |
set_ByteData(Byte[]) | Array | FunctionalTests .BasicMappingScenarioTests+ByteBase .set_ByteData(Byte[]) |
set_DerivedData(Byte[]) | Array | FunctionalTests .BasicMappingScenarioTests+ByteDerived .set_DerivedData(Byte[]) |
set_ExtraData(Byte[]) | Array | FunctionalTests .BasicMappingScenarioTests+ByteDerived2 .set_ExtraData(Byte[]) |
set_DependentNavigation(ICollection <BasicMappingScenarioTests+Repro165020_D erivedDependent>) | ICollection<T> | FunctionalTests .BasicMappingScenarioTests+Repro165020_D erivedPrincipal.set_DependentNavigation (ICollection <BasicMappingScenarioTests+Repro165020_D erivedDependent>) |
set_Navigation(ICollection <BasicMappingScenarioTests+SRDerived>) | ICollection<T> | FunctionalTests .BasicMappingScenarioTests+SRDerived .set_Navigation(ICollection <BasicMappingScenarioTests+SRDerived>) |
set_Orders(ICollection <BasicMappingScenarioTests+Repro110459_O rder>) | ICollection<T> | FunctionalTests .BasicMappingScenarioTests+Repro110459_C ustomer.set_Orders(ICollection <BasicMappingScenarioTests+Repro110459_O rder>) |
set_A1Col2(Byte[]) | Array | FunctionalTests .BasicMappingScenarioTests+Repro143351_A 1.set_A1Col2(Byte[]) |
set_A2Col1(Byte[]) | Array | FunctionalTests .BasicMappingScenarioTests+Repro143351_A 2.set_A2Col1(Byte[]) |
set_Entity1_Col3(Byte[]) | Array | FunctionalTests .BasicMappingScenarioTests+Entity1 .set_Entity1_Col3(Byte[]) |
set_Deriveds(ICollection <BasicMappingScenarioTests+AssocDerived> ) | ICollection<T> | FunctionalTests .BasicMappingScenarioTests+AssocRelated .set_Deriveds(ICollection <BasicMappingScenarioTests+AssocDerived> ) |
set_Bases(ICollection <BasicMappingScenarioTests+AssocBase>) | ICollection<T> | FunctionalTests .BasicMappingScenarioTests+AssocRelated .set_Bases(ICollection <BasicMappingScenarioTests+AssocBase>) |
set_Photo(Byte[]) | Array | FunctionalTests .BasicMappingScenarioTests+Repro147822_E ntityA.set_Photo(Byte[]) |
set_Photo(Byte[]) | Array | FunctionalTests .BasicMappingScenarioTests+Repro147906_E ntityA1.set_Photo(Byte[]) |
set_Photo(Byte[]) | Array | FunctionalTests .BasicMappingScenarioTests+Repro147929_E ntityB1.set_Photo(Byte[]) |
set_Property1(Byte[]) | Array | FunctionalTests .BasicMappingScenarioTests+EntityWithCom positePK.set_Property1(Byte[]) |
set_Property2(Byte[]) | Array | FunctionalTests .BasicMappingScenarioTests+EntityL .set_Property2(Byte[]) |
set_Property4(Byte[]) | Array | FunctionalTests .BasicMappingScenarioTests+EntityL_1 .set_Property4(Byte[]) |
set_Addresses(ICollection <BasicMappingScenarioTests+CodePlex1646+ Address>) | ICollection<T> | FunctionalTests .BasicMappingScenarioTests+CodePlex1646+ Person.set_Addresses(ICollection <BasicMappingScenarioTests+CodePlex1646+ Address>) |
set_Property1(Byte[]) | Array | FunctionalTests .ComplexTypeScenarioTests+EntityWithColu mnsRename.set_Property1(Byte[]) |
set_LoCTOffices(ICollection <ComplexTypeScenarioTests+LoCTOffice>) | ICollection<T> | FunctionalTests .ComplexTypeScenarioTests+LoCTBuilding .set_LoCTOffices(ICollection <ComplexTypeScenarioTests+LoCTOffice>) |
set_Occupants(ICollection <ComplexTypeScenarioTests+LoCTEmployee>) | ICollection<T> | FunctionalTests .ComplexTypeScenarioTests+LoCTOffice .set_Occupants(ICollection <ComplexTypeScenarioTests+LoCTEmployee>) |
set_Photos(ICollection <ComplexTypeScenarioTests+LoCTEmployeePh oto>) | ICollection<T> | FunctionalTests .ComplexTypeScenarioTests+LoCTEmployee .set_Photos(ICollection <ComplexTypeScenarioTests+LoCTEmployeePh oto>) |
set_Photo(Byte[]) | Array | FunctionalTests .ComplexTypeScenarioTests+LoCTEmployeePh oto.set_Photo(Byte[]) |
set_Property1(Byte[]) | Array | FunctionalTests .ConfigurationScenarioTests+BaseEntity_1 55894.set_Property1(Byte[]) |
set_InternalCollectionNavigationProperty (ICollection<LightweightEntity>) | ICollection<T> | FunctionalTests.LightweightEntity .set_InternalCollectionNavigationPropert y(ICollection<LightweightEntity>) |
set_InternalCollectionNavigationProperty (ICollection<LightweightEntity>) | ICollection<T> | FunctionalTests .LightweightEntityWithAnnotations .set_InternalCollectionNavigationPropert y(ICollection<LightweightEntity>) |
Statistics
Stat | ReturnType |
---|---|
Sum: | 0 |
Average: | 0 |
Minimum: | 0 |
Maximum: | 0 |
Standard deviation: | 0 |
Variance: | 0 |
![]() | Rule warning: Don't use .NET 1.x HashTable and ArrayList |
warnif count > 0
let forbiddenTypes = ThirdParty.Types.WithFullNameIn("System.Collections.HashTable", "System.Collections.ArrayList")
where forbiddenTypes.Count() > 0
from m in Application.Methods.ThatCreateAny(forbiddenTypes)
select m
// You can be forced to use HashTable or ArrayList
// because you are using third party code that requires
// working with these classes or because you are
// coding with .NET 1.x.View Code Query or Rule BodyView Code Query or Rule Body
6 methods matched
methods | Full Name |
---|---|
<Add_throws_when_type_is_interface>b__49 (IDbSet<ICollection>) | ProductivityApiTests.InvalidTypeTests. <Add_throws_when_type_is_interface>b__49 (IDbSet<ICollection>) |
<Non_generic_Add_throws_when_type_is_int erface>b__4b(DbSet) | ProductivityApiTests.InvalidTypeTests. <Non_generic_Add_throws_when_type_is_int erface>b__4b(DbSet) |
<Attach_throws_when_type_is_interface >b__69(IDbSet<ICollection>) | ProductivityApiTests.InvalidTypeTests. <Attach_throws_when_type_is_interface >b__69(IDbSet<ICollection>) |
<Non_generic_Attach_throws_when_type_is_ interface>b__6b(DbSet) | ProductivityApiTests.InvalidTypeTests. <Non_generic_Attach_throws_when_type_is_ interface>b__6b(DbSet) |
<Remove_throws_when_type_is_interface >b__7f(IDbSet<ICollection>) | ProductivityApiTests.InvalidTypeTests. <Remove_throws_when_type_is_interface >b__7f(IDbSet<ICollection>) |
<Non_generic_Remove_throws_when_type_is_ interface>b__81(DbSet) | ProductivityApiTests.InvalidTypeTests. <Non_generic_Remove_throws_when_type_is_ interface>b__81(DbSet) |
Statistics
Stat |
---|
Sum: |
Average: |
Minimum: |
Maximum: |
Standard deviation: |
Variance: |
210
System.Runtime .InteropServices |
|
![]() | Rule warning: Move P/Invokes to NativeMethods class |
warnif count > 0 from m in Application.Methods where
m.HasAttribute ("System.Runtime.InteropServices.DllImportAttribute".AllowNoMatch()) &&
m.ParentType.Name != "NativeMethods"
select m
// Platform Invocation methods, such as those marked
// with the System.Runtime.InteropServices.DllImportAttribute
// attribute, or methods defined by using the Declare
// keyword in Visual Basic, access unmanaged code.
// These methods should be in one of the following classes:
//
// - NativeMethods - This class does not suppress stack
// walks for unmanaged code permission.
// (System.Security.SuppressUnmanagedCodeSecurityAttribute
// must not be applied to this class.)
// This class is for methods that can be used
// anywhere because a stack walk will be performed.
//
// - SafeNativeMethods - This class suppresses
// stack walks for unmanaged code permission.
// (System.Security.SuppressUnmanagedCodeSecurityAttribute
// is applied to this class.)
// This class is for methods that are safe
// for anyone to call. Callers of these methods
// are not required to do a full security review
// to ensure that the usage is secure because
// the methods are harmless for any caller.
//
// - UnsafeNativeMethods - This class suppresses
// stack walks for unmanaged code permission.
// (System.Security.SuppressUnmanagedCodeSecurityAttribute
// is applied to this class.) This class is for
// methods that are potentially dangerous. Any
// caller of these methods must do a full security
// review to ensure that the usage is secure because
// no stack walk will be performed.
View Code Query or Rule BodyView Code Query or Rule Body
1 methods matched
method | Full Name |
---|---|
CoRegisterMessageFilter (IOleMessageFilter,IOleMessageFilter&) | System.Data.Entity .ConnectionFactoryConfig.MessageFilter .CoRegisterMessageFilter (IOleMessageFilter,IOleMessageFilter&) |
Statistics
Stat |
---|
Sum: |
Average: |
Minimum: |
Maximum: |
Standard deviation: |
Variance: |
420
System.Threading |
|
![]() | Rule warning: Don't create threads explicitely |
warnif count > 0 from m in Application.Methods where
m.CreateA ("System.Threading.Thread".AllowNoMatch())
select m
// Prefer using the thread pool instead of
// creating manually your own thread.
// Threads are costly objects.
// They take approximately 200,000 cycles to
// create and about 100,000 cycles to destroy.
// By default they reserve 1 megabyte of virtual
// memory for its stack and use 2,000-8,000
// cycles for each context switch.
// As a consequence, it is preferrable to let
// the thread pool recycle threads.
// Creating custom thread can also be the
// sign of flawed design, where tasks and
// threads have affinity. It is preferrable
// to code tasks that can be ran on any thread.View Code Query or Rule BodyView Code Query or Rule Body
1 methods matched
method | Full Name |
---|---|
RunDeadlockTest(Func<Task>) | System.Data.Entity.ProductivityApi .DeadlockTests.RunDeadlockTest(Func<Task >) |
Statistics
Stat |
---|
Sum: |
Average: |
Minimum: |
Maximum: |
Standard deviation: |
Variance: |
![]() | Rule warning: Don't use dangerous threading methods |
warnif count > 0
let wrongMethods = ThirdParty.Methods.WithFullNameIn(
// Usage of Thread.Abort() is dangerous.
// More information on this here:
// http://www.interact-sw.co.uk/iangblog/2004/11/12/cancellation
"System.Threading.Thread.Abort()",
"System.Threading.Thread.Abort(Object)",
// Usage of Thread.Sleep() is a sign of
// flawed design. More information on this here:
// http://msmvps.com/blogs/peterritchie/archive/2007/04/26/thread-sleep-is-a-sign-of-a-poorly-designed-program.aspx
"System.Threading.Thread.Sleep(Int32)",
// Suspend() and Resume() are dangerous threading methods, marked as obsolete.
// More information on workaround here:
// http://stackoverflow.com/questions/382173/what-are-alternative-ways-to-suspend-and-resume-a-thread
"System.Threading.Thread.Suspend()",
"System.Threading.Thread.Resume()"
)
from m in Application.Methods.UsingAny(wrongMethods)
select new { m, calls = m.MethodsCalled.Intersect(wrongMethods) }
View Code Query or Rule BodyView Code Query or Rule Body
3 methods matched
methods | calls | Full Name |
---|---|---|
SafeDeleteDirectory(String) | 1 method | System.Data.Entity.IOHelpers .SafeDeleteDirectory(String) |
<RunDeadlockTest>b__11() | 1 method | System.Data.Entity.ProductivityApi .DeadlockTests+<>c__DisplayClass14. <RunDeadlockTest>b__11() |
GetElapsed(DatabaseLogFormatter) | 1 method | System.Data.Entity.Infrastructure .Interception .DatabaseLogFormatterTests+LogResult .GetElapsed(DatabaseLogFormatter) |
Statistics
Stat | calls |
---|---|
Sum: | 0 |
Average: | 0 |
Minimum: | 0 |
Maximum: | 0 |
Standard deviation: | 0 |
Variance: | 0 |
110
System.Xml |
|
![]() | Rule warning: Method should not return concrete XmlNode |
warnif count > 0
let concreteXmlTypes = ThirdParty.Types.WithFullNameIn(
"System.Xml.XmlDocument",
"System.Xml.XmlAttribute",
"System.Xml.XmlDocumentFragment",
"System.Xml.XmlEntity",
"System.Xml.XmlLinkedNode",
"System.Xml.XmlNotation",
"System.Xml.XmlNode")
from m in Application.Methods.WithReturnTypeIn(concreteXmlTypes)
select new { m, m.ReturnType }
// The class System.Xml.XmlNode implements the interface
// System.Xml.Xpath.IXPathNavigable. It is preferrable
// to return this interface instead of a concrete class.
View Code Query or Rule BodyView Code Query or Rule Body
1 methods matched
method | ReturnType | Full Name |
---|---|---|
ToStartXml() | XmlNode | System.Data.Entity.TestHelpers .PartialTrustCommand.ToStartXml() |
Statistics
Stat | ReturnType |
---|---|
Sum: | 0 |
Average: | 0 |
Minimum: | 0 |
Maximum: | 0 |
Standard deviation: | 0 |
Variance: | 0 |
010
System.Globalization |
|
![]() | Rule warning: Float and Date Parsing must be culture aware |
warnif count > 0
from m in ThirdParty.Types.WithFullNameIn(
"System.DateTime",
"System.Single",
"System.Double",
"System.Decimal").ChildMethods()
where m.NbParameters > 0 &&
(m.SimpleName == "Parse" ||
m.SimpleName == "ToString") &&
!m.Name.Contains("IFormatProvider")
select new { m, m.MethodsCallingMe }View Code Query or Rule BodyView Code Query or Rule Body
2 methods matched
methods | MethodsCallingMe | Full Name |
---|---|---|
Parse(String) | 4 methods | System.DateTime.Parse(String) |
ToString(String) | 2 methods | System.DateTime.ToString(String) |
Statistics
Stat | MethodsCallingMe |
---|---|
Sum: | 0 |
Average: | 0 |
Minimum: | 0 |
Maximum: | 0 |
Standard deviation: | 0 |
Variance: | 0 |
Object Oriented Design
|
![]() | Rule warning: Base class should not use derivatives |
warnif count > 0
from baseClass in JustMyCode.Types
where baseClass.IsClass && baseClass.NbChildren > 0 // <-- for optimization!
let derivedClassesUsed = baseClass.DerivedTypes.UsedBy(baseClass)
where derivedClassesUsed.Count() > 0
select new { baseClass, derivedClassesUsed }View Code Query or Rule BodyView Code Query or Rule Body
13 types matched
types | derivedClassesUsed | Full Name |
---|---|---|
AssociationScenarioTests+DependentSelfRe f | 1 type | FunctionalTests .AssociationScenarioTests+DependentSelfR ef |
AssociationScenarioTests+SelfRefInherite dBase | 1 type | FunctionalTests .AssociationScenarioTests+SelfRefInherit edBase |
AssociationScenarioTests+Repro150565_Bas eDependent | 1 type | FunctionalTests .AssociationScenarioTests+Repro150565_Ba seDependent |
BasicMappingScenarioTests+Repro135563_2_ BaseDependent | 1 type | FunctionalTests .BasicMappingScenarioTests+Repro135563_2 _BaseDependent |
BasicMappingScenarioTests+Repro135563_3_ BaseDependent | 1 type | FunctionalTests .BasicMappingScenarioTests+Repro135563_3 _BaseDependent |
DataAnnotationScenarioTests+AbstractReco rd | 1 type | FunctionalTests .DataAnnotationScenarioTests+AbstractRec ord |
InheritanceScenarioTests+TheBaseClass | 1 type | FunctionalTests .InheritanceScenarioTests+TheBaseClass |
BaseDependent | 1 type | FunctionalTests.Bug336706.BaseDependent |
DatabaseExistsInInitializerTests+ExistsC ontext | 1 type | System.Data.Entity.SqlServer .DatabaseExistsInInitializerTests+Exists Context |
DatabaseExistsTests+ExistsContext | 1 type | System.Data.Entity.SqlServer .DatabaseExistsTests+ExistsContext |
ProductMm | 1 type | FunctionalTests.ProductivityApi .TemplateModels.CsMonsterModel.ProductMm |
ProductMm | 1 type | ProductMm |
MetadataCacheTests | 3 types | System.Data.Entity.Core.Metadata.Edm .MetadataCacheTests |
Statistics
Stat | derivedClassesUsed |
---|---|
Sum: | 0 |
Average: | 0 |
Minimum: | 0 |
Maximum: | 0 |
Standard deviation: | 0 |
Variance: | 0 |
![]() | Rule warning: Class shouldn't be too deep in inheritance tree |
warnif count > 0 from t in JustMyCode.Types
where t.IsClass
let baseClasses = t.BaseClasses.ExceptThirdParty()
// Warn for classes with 3 or more base classes.
// Notice that we don't count third-party classes
// because this rule concerns your code design,
// not third-party libraries consumed design.
where baseClasses.Count() >= 3
select new { t, baseClasses,
// The metric value DepthOfInheritance takes account
// of third-party base classes
t.DepthOfInheritance }
// Branches too long in the derivation should be avoided.
// See the definition of the DepthOfInheritance metric here
// http://www.ndepend.com/Metrics.aspx#DIT
View Code Query or Rule BodyView Code Query or Rule Body
79 types matched
types | baseClasses | Depth of inheritance | Full Name |
---|---|---|---|
UniqueConstraintInfo | 3 types | 4 | System.Data.Entity.Migrations .UniqueConstraintInfo |
PrimaryKeyConstraintInfo | 3 types | 4 | System.Data.Entity.Migrations .PrimaryKeyConstraintInfo |
ReferentialConstraintInfo | 3 types | 4 | System.Data.Entity.Migrations .ReferentialConstraintInfo |
ShopContext_v4 | 3 types | 5 | System.Data.Entity.Migrations .ShopContext_v4 |
ShopContext_v6 | 3 types | 5 | System.Data.Entity.Migrations .ShopContext_v6 |
BasicMappingScenarioTests+DCrazy | 3 types | 4 | FunctionalTests .BasicMappingScenarioTests+DCrazy |
BasicMappingScenarioTests+ECrazy | 4 types | 5 | FunctionalTests .BasicMappingScenarioTests+ECrazy |
BasicMappingScenarioTests+XCrazy | 4 types | 5 | FunctionalTests .BasicMappingScenarioTests+XCrazy |
BasicMappingScenarioTests+CodePlex1646_R epro2+User | 3 types | 4 | FunctionalTests .BasicMappingScenarioTests+CodePlex1646_ Repro2+User |
Issue1776+Swaption | 3 types | 4 | FunctionalTests.Issue1776+Swaption |
AutoAndGenerateScenarios_Empty | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_Empty |
AutoAndGenerateScenarios_AddTable | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AddTable |
AutoAndGenerateScenarios_AddTableWithGui dKey | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AddTableWithGu idKey |
AutoAndGenerateScenarios_RemoveTable | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_RemoveTable |
AutoAndGenerateScenarios_ChangeTableSche ma | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_ChangeTableSch ema |
AutoAndGenerateScenarios_ChangeTableName | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_ChangeTableNam e |
AutoAndGenerateScenarios_ChangeTablePrim aryKey | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_ChangeTablePri maryKey |
AutoAndGenerateScenarios_CreateTableWith Annotations | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_CreateTableWit hAnnotations |
AutoAndGenerateScenarios_CreateTableWith ColumnAnnotations | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_CreateTableWit hColumnAnnotations |
AutoAndGenerateScenarios_DropTableWithCo lumnAnnotations | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_DropTableWithC olumnAnnotations |
AutoAndGenerateScenarios_DropTableWithAn notations | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_DropTableWithA nnotations |
AutoAndGenerateScenarios_AlterTableAnnot ations | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterTableAnno tations |
AutoAndGenerateScenarios_RenameTableWith Annotations | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_RenameTableWit hAnnotations |
AutoAndGenerateScenarios_AddForeignKey | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AddForeignKey |
AutoAndGenerateScenarios_AddPromotedFore ignKey | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AddPromotedFor eignKey |
AutoAndGenerateScenarios_RemoveForeignKe y | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_RemoveForeignK ey |
AutoAndGenerateScenarios_ChangeForeignKe yOnDeleteAction | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_ChangeForeignK eyOnDeleteAction |
AutoAndGenerateScenarios_AddColumn | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AddColumn |
AutoAndGenerateScenarios_AddColumnNvarch arMax | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AddColumnNvarc harMax |
AutoAndGenerateScenarios_AddColumnNvarch arMax64 | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AddColumnNvarc harMax64 |
AutoAndGenerateScenarios_AddColumnNvarch ar | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AddColumnNvarc har |
AutoAndGenerateScenarios_AddColumnNvarch arMaxLength | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AddColumnNvarc harMaxLength |
AutoAndGenerateScenarios_AddColumnNvarch ar64 | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AddColumnNvarc har64 |
AutoAndGenerateScenarios_RemoveColumn | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_RemoveColumn |
AutoAndGenerateScenarios_AlterColumnName | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnNam e |
AutoAndGenerateScenarios_AlterSpatialCol umnNames | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterSpatialCo lumnNames |
AutoAndGenerateScenarios_AlterColumnType <TContextV1,TContextV2> | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnTyp e<TContextV1,TContextV2> |
AutoAndGenerateScenarios_AlterColumnType _Decimal15ToDouble | 4 types | 6 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnTyp e_Decimal15ToDouble |
AutoAndGenerateScenarios_AlterColumnType _SingleToDecimal16 | 4 types | 6 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnTyp e_SingleToDecimal16 |
AutoAndGenerateScenarios_AlterColumnType _SingleToDouble | 4 types | 6 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnTyp e_SingleToDouble |
AutoAndGenerateScenarios_AlterColumnType _SingleToDecimal11 | 4 types | 6 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnTyp e_SingleToDecimal11 |
AutoAndGenerateScenarios_AlterColumnType _Decimal6ToDouble | 4 types | 6 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnTyp e_Decimal6ToDouble |
AutoAndGenerateScenarios_AlterColumnType _Int32ToInt64 | 4 types | 6 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnTyp e_Int32ToInt64 |
AutoAndGenerateScenarios_AlterColumnType _Int16ToInt64 | 4 types | 6 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnTyp e_Int16ToInt64 |
AutoAndGenerateScenarios_AlterColumnType _Int16ToInt32 | 4 types | 6 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnTyp e_Int16ToInt32 |
AutoAndGenerateScenarios_AlterColumnType _ByteToInt64 | 4 types | 6 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnTyp e_ByteToInt64 |
AutoAndGenerateScenarios_AlterColumnType _ByteToInt32 | 4 types | 6 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnTyp e_ByteToInt32 |
AutoAndGenerateScenarios_AlterColumnType _ByteToInt16 | 4 types | 6 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnTyp e_ByteToInt16 |
AutoAndGenerateScenarios_AlterColumnFixe dLength | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnFix edLength |
AutoAndGenerateScenarios_AlterColumnMaxL ength<TContextV1,TContextV2> | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnMax Length<TContextV1,TContextV2> |
AutoAndGenerateScenarios_AlterColumn256_ Max | 4 types | 6 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumn256 _Max |
AutoAndGenerateScenarios_AlterColumnMaxL ength_Max | 4 types | 6 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnMax Length_Max |
AutoAndGenerateScenarios_AlterColumnMaxL ength_512 | 4 types | 6 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnMax Length_512 |
AutoAndGenerateScenarios_AlterColumnNull able | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnNul lable |
AutoAndGenerateScenarios_AlterColumnPrec ision | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnPre cision |
AutoAndGenerateScenarios_AlterColumnScal e | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnSca le |
AutoAndGenerateScenarios_AlterColumnUnic ode | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnUni code |
AutoAndGenerateScenarios_AlterColumnChan gedAnnotations | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnCha ngedAnnotations |
AutoAndGenerateScenarios_AlterColumnAdde dAnnotations | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnAdd edAnnotations |
AutoAndGenerateScenarios_AlterColumnRemo vedAnnotations | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnRem ovedAnnotations |
AutoAndGenerateScenarios_AlterColumnEver ythingAnnotations | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnEve rythingAnnotations |
AutoAndGenerateScenarios_AlterColumnCust omAnnotation | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnCus tomAnnotation |
AutoAndGenerateScenarios_AddColumnWithAn notations | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AddColumnWithA nnotations |
AutoAndGenerateScenarios_DropColumnWithA nnotations | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_DropColumnWith Annotations |
AutoAndGenerateScenarios_AddIndex | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AddIndex |
AutoAndGenerateScenarios_ChangeIndex | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_ChangeIndex |
AutoAndGenerateScenarios_DropIndex | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_DropIndex |
AutoAndGenerateScenarios_LotsOfIndexStuf f | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_LotsOfIndexStu ff |
AutoAndGenerateScenarios_ImplicitIndexCh anges | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_ImplicitIndexC hanges |
AutoAndGenerateScenarios_DefaultNameInde xes | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_DefaultNameInd exes |
AutoAndGenerateScenarios_RenameProcedure | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_RenameProcedur e |
AutoAndGenerateScenarios_AlterProcedure | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterProcedure |
AutoAndGenerateScenarios_MoveProcedure | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_MoveProcedure |
AutoAndGenerateScenarios_MoveProcedure_M anyToMany | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_MoveProcedure_ ManyToMany |
AutoAndGenerateScenarios_RenameProcedure _ManyToMany | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_RenameProcedur e_ManyToMany |
AutoAndGenerateScenarios_AlterProcedure_ ManyToMany | 3 types | 5 | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterProcedure _ManyToMany |
Omnivore | 3 types | 4 | System.Data.Entity.TestModels .FantasyModel.Omnivore |
BinaryPropertyConfigurationTests | 3 types | 5 | System.Data.Entity.ModelConfiguration .Configuration.Properties.Primitive .BinaryPropertyConfigurationTests |
StringPropertyConfigurationTests | 3 types | 5 | System.Data.Entity.ModelConfiguration .Configuration.Properties.Primitive .StringPropertyConfigurationTests |
Statistics
Stat | baseClasses | Depth of inheritance |
---|---|---|
Sum: | 0 | 402 |
Average: | 0 | 5.09 |
Minimum: | 0 | 4 |
Maximum: | 0 | 6 |
Standard deviation: | 0 | 0.51 |
Variance: | 0 | 0.26 |
![]() | Rule warning: Class with no descendant should be sealed if possible |
warnif count > 0 from t in JustMyCode.Types where
t.IsClass &&
t.NbChildren ==0 &&
!t.IsSealed &&
!t.IsStatic
// && !t.IsPublic <-- You might want to add this condition
// if you are developing a framework
// with classes that are intended to be
// sub-classed by your clients.
orderby t.NbLinesOfCode descending
select new { t, t.NbLinesOfCode }View Code Query or Rule BodyView Code Query or Rule Body
3,766 types matched
types | # lines of code (LOC) | Full Name |
---|---|---|
LinqTests | 2 065 | ProductivityApiTests.LinqTests |
PropertyApiTests | 1 635 | ProductivityApiTests.PropertyApiTests |
DbExpressionBuilderTests | 1 353 | System.Data.Entity.Core.Common .CommandTrees.DbExpressionBuilderTests |
EdmModelDifferTests | 1 325 | System.Data.Entity.Migrations .Infrastructure.EdmModelDifferTests |
DbSetTests | 1 057 | ProductivityApiTests.DbSetTests |
DbContextTests | 969 | ProductivityApiTests.DbContextTests |
DbPropertyValuesTests | 916 | ProductivityApiTests .DbPropertyValuesTests |
QueryableExtensionsTests | 881 | System.Data.Entity .QueryableExtensionsTests |
TransactionsTests | 706 | System.Data.Entity.Objects .TransactionsTests |
FindTests | 693 | ProductivityApiTests.FindTests |
ValidationTests | 534 | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .ValidationTests |
DatabaseInitializationTests | 466 | ProductivityApiTests .DatabaseInitializationTests |
InternalDispatcherTests+Dispatch | 439 | System.Data.Entity.Infrastructure .Interception .InternalDispatcherTests+Dispatch |
ConventionTypeConfigurationTests | 420 | System.Data.Entity.ModelConfiguration .Configuration .ConventionTypeConfigurationTests |
FunctionsScenarioTests+ModificationFunct ions+ConfigurationApis | 399 | FunctionalTests .FunctionsScenarioTests+ModificationFunc tions+ConfigurationApis |
DbRawSqlQueryTests+AsIDbAsyncEnumerable | 385 | System.Data.Entity.Infrastructure .DbRawSqlQueryTests+AsIDbAsyncEnumerable |
ConcurrencyTests | 382 | ProductivityApiTests.ConcurrencyTests |
DbPropertyValuesTests | 379 | System.Data.Entity.Infrastructure .DbPropertyValuesTests |
DatabindingTests | 361 | ProductivityApiTests.DatabindingTests |
TemplateTests | 356 | TemplateTests |
SqlServerMigrationSqlGeneratorTests | 350 | System.Data.Entity.SqlServer .SqlServerMigrationSqlGeneratorTests |
FunctionsScenarioTests+ModificationFunct ions+LightweightConventions | 349 | FunctionalTests .FunctionsScenarioTests+ModificationFunc tions+LightweightConventions |
ConventionPrimitivePropertyConfiguration Tests | 341 | System.Data.Entity.ModelConfiguration .Configuration .ConventionPrimitivePropertyConfiguratio nTests |
DbMigrationTests | 331 | System.Data.Entity.Migrations .DbMigrationTests |
DatabaseTests | 322 | ProductivityApiTests.DatabaseTests |
HistoryRepositoryTests | 321 | System.Data.Entity.Migrations.History .HistoryRepositoryTests |
MetadataEnumTests | 315 | System.Data.Entity.Metadata .MetadataEnumTests |
ConnectionFactoryConfigTests | 314 | System.Data.Entity .ConnectionFactoryConfig .ConnectionFactoryConfigTests |
StreamingTests | 311 | ProductivityApiTests.StreamingTests |
SerializationScenarios | 300 | System.Data.Entity.Objects .SerializationScenarios |
DbContextInfoTests | 291 | System.Data.Entity.Infrastructure .DbContextInfoTests |
DatabindingTests | 290 | System.Data.Entity.DatabindingTests |
DbSqlQueryTests | 288 | ProductivityApiTests.DbSqlQueryTests |
ModificationCommandTreeGeneratorTests | 280 | System.Data.Entity.Migrations .Infrastructure .ModificationCommandTreeGeneratorTests |
DbEntityEntryTests | 264 | ProductivityApiTests.DbEntityEntryTests |
DbEntityEntryTests+Property | 258 | System.Data.Entity.Infrastructure .DbEntityEntryTests+Property |
InternalConnectionTests | 258 | System.Data.Entity.Internal .InternalConnectionTests |
CommitFailureTests | 257 | System.Data.Entity.Interception .CommitFailureTests |
DbCommandDispatcherTests+AsyncNonQuery | 257 | System.Data.Entity.Infrastructure .Interception .DbCommandDispatcherTests+AsyncNonQuery |
BasicMigrationScenarios | 252 | System.Data.Entity.Migrations .BasicMigrationScenarios |
EntityConnectionTests+Open | 247 | System.Data.Entity.Core.EntityClient .EntityConnectionTests+Open |
EnumOCMappingTests | 245 | System.Data.Entity.MetadataMapping .EnumOCMappingTests |
LimitExpressionTests | 245 | PlanCompilerTests.LimitExpressionTests |
TypeExtensionsTests+GetProperties | 244 | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties |
EntityValidatorBuilderTests | 244 | System.Data.Entity.Validation .EntityValidatorBuilderTests |
EntityConnectionTests+OpenAsync | 238 | System.Data.Entity.Core.EntityClient .EntityConnectionTests+OpenAsync |
MetadataCollectionTests | 234 | System.Data.Entity.Core.Metadata.Edm .MetadataCollectionTests |
BufferedDataReaderTests | 233 | System.Data.Entity.Core.Objects.Internal .BufferedDataReaderTests |
DatabaseInitializerTests | 231 | System.Data.Entity .DatabaseInitializerTests |
SqlCeMigrationSqlGeneratorTests | 224 | System.Data.Entity.SqlServerCompact .SqlCeMigrationSqlGeneratorTests |
ConnectionTests | 219 | ProductivityApiTests.ConnectionTests |
IDbAsyncEnumerableExtensionsTests | 218 | System.Data.Entity .IDbAsyncEnumerableExtensionsTests |
DbEntityEntryTests+Member | 218 | System.Data.Entity.Infrastructure .DbEntityEntryTests+Member |
TemplateTests | 213 | ProductivityApiTests.TemplateTests |
GroupAggregateTests | 210 | System.Data.Entity.Query .GroupAggregateTests |
Employee | 205 | FunctionalTests.Model.Employee |
SalesOrderHeader | 205 | FunctionalTests.Model.SalesOrderHeader |
UpdateTests | 205 | System.Data.Entity.Update.UpdateTests |
SqlSpatialServicesTests | 201 | System.Data.Entity.SqlServer .SqlSpatialServicesTests |
MockableDbSetTests | 200 | System.Data.Entity.TestDoubles .MockableDbSetTests |
CSharpMigrationCodeGeneratorTests | 197 | System.Data.Entity.Migrations.Design .CSharpMigrationCodeGeneratorTests |
VisualBasicMigrationCodeGeneratorTests | 197 | System.Data.Entity.Migrations.Design .VisualBasicMigrationCodeGeneratorTests |
LazyLoadingTests | 196 | System.Data.Entity.Objects .LazyLoadingTests |
DbContextTestsForSqlCe | 196 | ProductivityApiTests .DbContextTestsForSqlCe |
MockableNonGenericDbSetTests | 189 | System.Data.Entity.TestDoubles .MockableNonGenericDbSetTests |
DbContextTests | 188 | ProductivityApiUnitTests.DbContextTests |
NullSemanticsTests | 187 | System.Data.Entity.Query .NullSemanticsTests |
DetectChangesTests | 185 | ProductivityApiTests.DetectChangesTests |
DbGeometryTests | 185 | System.Data.Entity.Spatial .DbGeometryTests |
ModificationFunctionConfigurationTests | 180 | System.Data.Entity.ModelConfiguration .Configuration.Functions .ModificationFunctionConfigurationTests |
DynamicAssembly | 178 | System.Data.Entity.DynamicAssembly |
SqlCeCanonicalFunctionsTests | 178 | System.Data.Entity.Query .SqlCeCanonicalFunctionsTests |
StringConcatTests | 177 | System.Data.Entity.Core.Objects.ELinq .StringConcatTests |
MslXmlSchemaWriterTests | 175 | System.Data.Entity.Core.Metadata.Edm .MslXmlSchemaWriterTests |
TypeExtensionsTests+GetDeclaredMethod | 173 | System.Data.Entity.Utilities .TypeExtensionsTests+GetDeclaredMethod |
DbEntityEntryTests+ComplexProperty | 172 | System.Data.Entity.Infrastructure .DbEntityEntryTests+ComplexProperty |
InMemoryNonGenericDbSetTests | 171 | System.Data.Entity.TestDoubles .InMemoryNonGenericDbSetTests |
SpatialEdmFunctionsTests | 171 | System.Data.Entity.Core.Common .CommandTrees.SpatialEdmFunctionsTests |
DatabaseExistsInInitializerTests | 170 | System.Data.Entity.SqlServer .DatabaseExistsInInitializerTests |
GroupByOptimizationTests | 169 | System.Data.Entity.Query.LinqToEntities .GroupByOptimizationTests |
EdmPropertyTests | 168 | System.Data.Entity.Core.Metadata.Edm .EdmPropertyTests |
DbFunctionScenarios+DateTimeFunctions | 166 | FunctionalTests.ProductivityApi .DbFunctionScenarios+DateTimeFunctions |
DbFunctionScenarios+EntityFunctionsProxi es+DateTimeFunctions | 166 | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies+DateTimeFunctions |
MultiThreadingTests | 166 | System.Data.Entity.MultiThreadingTests |
BridgeDataReaderTests | 165 | System.Data.Entity.Core.Query .ResultAssembly.BridgeDataReaderTests |
NamespaceAndNestingTests | 164 | ProductivityApiTests .NamespaceAndNestingTests |
TranslatorTests | 164 | System.Data.Entity.Core.Common.Internal .Materialization.TranslatorTests |
ModelDefinedFunctionTests | 163 | System.Data.Entity.Query .ModelDefinedFunctionTests |
SimpleScenariosForLocalDb | 163 | ProductivityApiTests .SimpleScenariosForLocalDb |
MetadataOptimizationTests | 161 | System.Data.Entity.Core.Metadata.Edm .MetadataOptimizationTests |
IndexAttributeTests | 160 | System.ComponentModel.DataAnnotations .Schema.IndexAttributeTests |
Contact | 156 | FunctionalTests.Model.Contact |
EdmSerializationVisitorTests | 155 | System.Data.Entity.Core.Metadata.Edm .EdmSerializationVisitorTests |
DbCommandDispatcherTests+NonQuery | 155 | System.Data.Entity.Infrastructure .Interception .DbCommandDispatcherTests+NonQuery |
ScriptingScenarios | 151 | System.Data.Entity.Migrations .ScriptingScenarios |
DbConnectionFactoryTests | 151 | System.Data.Entity.Infrastructure .DbConnectionFactoryTests |
TimeoutTests | 150 | System.Data.Entity.ProductivityApi .TimeoutTests |
IncludeTests | 150 | ProductivityApiTests.IncludeTests |
DbCommandDispatcherTests+AsyncScalar | 149 | System.Data.Entity.Infrastructure .Interception .DbCommandDispatcherTests+AsyncScalar |
Address | 147 | FunctionalTests.Model.Address |
Statistics
Stat | # lines of code (LOC) |
---|---|
Sum: | 72 186 |
Average: | 19.17 |
Minimum: | 0 |
Maximum: | 2 065 |
Standard deviation: | 76.07 |
Variance: | 5 786 |
![]() | Rule warning: Overrides of Method() should call base.Method() |
// Overrides of Method() should refine the behavior of base.Method().
// If base.Method() is not called, the base behavior is not refined but it is replaced.
// Violations of this rule are a sign of design flaw,
// especially if the design provides valid reasons
// that advocates that the base behavior must be replaced and not refined.
//
// Discussions on this topic are available here:
// http://stackoverflow.com/questions/1107022/should-i-call-the-base-class-implementation-when-overriding-a-method-in-c-sharp
// http://stackoverflow.com/questions/2945147/make-sure-base-method-gets-called-in-c-sharp
warnif count > 0
from t in Types // Take account of third-party types too
// Bother only classes with descendant
where t.IsClass && t.NbChildren > 0
from mBase in t.InstanceMethods
where mBase.IsVirtual &&
!mBase.IsThirdParty &&
!mBase.IsAbstract &&
!mBase.IsExplicitInterfaceImpl
from mOverride in mBase.OverridesDirectDerived
where !mOverride.IsUsing(mBase)
select new { mOverride, shouldCall = mBase, definedInBaseClass = mBase.ParentType }
View Code Query or Rule BodyView Code Query or Rule Body
89 methods matched
methods | shouldCall | definedInBaseClass | Full Name |
---|---|---|---|
OnModelCreating(DbModelBuilder) | OnModelCreating(DbModelBuilder) | TestBase | FunctionalTests.EndToEndFunctionsTest .OnModelCreating(DbModelBuilder) |
EnumerateTestCommands(IMethodInfo) | EnumerateTestCommands(IMethodInfo) | ExtendedFactAttribute | System.Data.Entity.Migrations .MigrationsTheoryAttribute .EnumerateTestCommands(IMethodInfo) |
OnModelCreating(DbModelBuilder) | OnModelCreating(DbModelBuilder) | ShopContext_v1 | System.Data.Entity.Migrations .ShopContext_v2.OnModelCreating (DbModelBuilder) |
Abstract_in_middle_of_hierarchy_with_TPC () | Abstract_in_middle_of_hierarchy_with_TPC() | BasicMappingScenarioTests | FunctionalTests .FunctionsScenarioTests+BasicMapping .Abstract_in_middle_of_hierarchy_with_TP C() |
get_VirtualBaseClassProperty() | get_VirtualBaseClassProperty() | BasicMappingScenarioTests+BaseEntity | FunctionalTests .BasicMappingScenarioTests+Unit .get_VirtualBaseClassProperty() |
set_VirtualBaseClassProperty(String) | set_VirtualBaseClassProperty(String) | BasicMappingScenarioTests+BaseEntity | FunctionalTests .BasicMappingScenarioTests+Unit .set_VirtualBaseClassProperty(String) |
get_VirtualBaseClassProperty() | get_VirtualBaseClassProperty() | DataAnnotationScenarioTests+BaseEntity | FunctionalTests .DataAnnotationScenarioTests+Unit .get_VirtualBaseClassProperty() |
set_VirtualBaseClassProperty(String) | set_VirtualBaseClassProperty(String) | DataAnnotationScenarioTests+BaseEntity | FunctionalTests .DataAnnotationScenarioTests+Unit .set_VirtualBaseClassProperty(String) |
SetDropCreateIfNotExists() | SetDropCreateIfNotExists() | DatabaseExistsInInitializerTests+ExistsContext | System.Data.Entity.SqlServer .DatabaseExistsInInitializerTests+Exists Context<T>.SetDropCreateIfNotExists() |
SetDropCreateIfModelChanges() | SetDropCreateIfModelChanges() | DatabaseExistsInInitializerTests+ExistsContext | System.Data.Entity.SqlServer .DatabaseExistsInInitializerTests+Exists Context<T>.SetDropCreateIfModelChanges() |
ModifyMigrationsConfiguration (DbMigrationsConfiguration) | ModifyMigrationsConfiguration(DbMigrationsConfiguration) | DbTestCase | System.Data.Entity.Migrations .AlterTableAnnotationsScenarios .ModifyMigrationsConfiguration (DbMigrationsConfiguration) |
ModifyMigrationsConfiguration (DbMigrationsConfiguration) | ModifyMigrationsConfiguration(DbMigrationsConfiguration) | DbTestCase | System.Data.Entity.Migrations .AddColumnScenarios .ModifyMigrationsConfiguration (DbMigrationsConfiguration) |
ModifyMigrationsConfiguration (DbMigrationsConfiguration) | ModifyMigrationsConfiguration(DbMigrationsConfiguration) | DbTestCase | System.Data.Entity.Migrations .AlterColumnScenarios .ModifyMigrationsConfiguration (DbMigrationsConfiguration) |
ModifyMigrationsConfiguration (DbMigrationsConfiguration) | ModifyMigrationsConfiguration(DbMigrationsConfiguration) | DbTestCase | System.Data.Entity.Migrations .CreateTableScenarios .ModifyMigrationsConfiguration (DbMigrationsConfiguration) |
VerifyMigrationsException (MigrationsException) | VerifyMigrationsException(MigrationsException) | AutoAndGenerateTestCase<TContextV1,TContextV2> | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterProcedure .VerifyMigrationsException (MigrationsException) |
VerifyUpOperations(IEnumerable <MigrationOperation>) | VerifyUpOperations(IEnumerable<MigrationOperation>) | AutoAndGenerateScenarios_AlterColumnMaxLength<TContextV1,TContextV2> | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnMax Length_Max.VerifyUpOperations (IEnumerable<MigrationOperation>) |
VerifyDownOperations(IEnumerable <MigrationOperation>) | VerifyDownOperations(IEnumerable<MigrationOperation>) | AutoAndGenerateScenarios_AlterColumnMaxLength<TContextV1,TContextV2> | System.Data.Entity.Migrations .AutoAndGenerateScenarios_AlterColumnMax Length_Max.VerifyDownOperations (IEnumerable<MigrationOperation>) |
OnModelCreating(DbModelBuilder) | OnModelCreating(DbModelBuilder) | ConnectionTests+OnModelConnectionContext<TContext> | ProductivityApiTests .ConnectionTests+OnModelConnectionContex tWithOpenAndClose.OnModelCreating (DbModelBuilder) |
get_EntityHashCode() | get_EntityHashCode() | BaseTypeForLinq | SimpleModel.OrderForLinq .get_EntityHashCode() |
get_Name() | get_Name() | EntityWithBuiltInValidationAttributes | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .EntityWithAllKindsOfValidation.get_Name () |
set_Name(String) | set_Name(String) | EntityWithBuiltInValidationAttributes | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .EntityWithAllKindsOfValidation.set_Name (String) |
get_AmountLaundered() | get_AmountLaundered() | MemberInfoExtensionsTests+GetCustomAttributes+Saul | System.Data.Entity.Utilities .MemberInfoExtensionsTests+GetCustomAttr ibutes+BetterCall.get_AmountLaundered() |
set_AmountLaundered(Decimal) | set_AmountLaundered(Decimal) | MemberInfoExtensionsTests+GetCustomAttributes+Saul | System.Data.Entity.Utilities .MemberInfoExtensionsTests+GetCustomAttr ibutes+BetterCall.set_AmountLaundered (Decimal) |
Launder(Decimal) | Launder(Decimal) | MemberInfoExtensionsTests+GetCustomAttributes+Saul | System.Data.Entity.Utilities .MemberInfoExtensionsTests+GetCustomAttr ibutes+BetterCall.Launder(Decimal) |
get_Mary() | get_Mary() | PropertyInfoExtensionsTests+GetPropertiesInHierarchy+Ee | System.Data.Entity.Utilities .PropertyInfoExtensionsTests+GetProperti esInHierarchy+Cher.get_Mary() |
set_Mary(Int32) | set_Mary(Int32) | PropertyInfoExtensionsTests+GetPropertiesInHierarchy+Ee | System.Data.Entity.Utilities .PropertyInfoExtensionsTests+GetProperti esInHierarchy+Cher.set_Mary(Int32) |
get_Poppins() | get_Poppins() | PropertyInfoExtensionsTests+GetPropertiesInHierarchy+Ee | System.Data.Entity.Utilities .PropertyInfoExtensionsTests+GetProperti esInHierarchy+Cher.get_Poppins() |
set_Poppins(Int32) | set_Poppins(Int32) | PropertyInfoExtensionsTests+GetPropertiesInHierarchy+Ee | System.Data.Entity.Utilities .PropertyInfoExtensionsTests+GetProperti esInHierarchy+Cher.set_Poppins(Int32) |
get_Bert() | get_Bert() | PropertyInfoExtensionsTests+GetPropertiesInHierarchy+Ee | System.Data.Entity.Utilities .PropertyInfoExtensionsTests+GetProperti esInHierarchy+Cher.get_Bert() |
set_Bert(Int32) | set_Bert(Int32) | PropertyInfoExtensionsTests+GetPropertiesInHierarchy+Ee | System.Data.Entity.Utilities .PropertyInfoExtensionsTests+GetProperti esInHierarchy+Cher.set_Bert(Int32) |
get_Banks() | get_Banks() | PropertyInfoExtensionsTests+GetPropertiesInHierarchy+Ee | System.Data.Entity.Utilities .PropertyInfoExtensionsTests+GetProperti esInHierarchy+Cher.get_Banks() |
set_AdmiralBoom(Int32) | set_AdmiralBoom(Int32) | PropertyInfoExtensionsTests+GetPropertiesInHierarchy+Ee | System.Data.Entity.Utilities .PropertyInfoExtensionsTests+GetProperti esInHierarchy+Cher.set_AdmiralBoom(Int32 ) |
get_Mary() | get_Mary() | PropertyInfoExtensionsTests+GetPropertiesInHierarchy+Cher | System.Data.Entity.Utilities .PropertyInfoExtensionsTests+GetProperti esInHierarchy+ChimChim.get_Mary() |
set_Mary(Int32) | set_Mary(Int32) | PropertyInfoExtensionsTests+GetPropertiesInHierarchy+Cher | System.Data.Entity.Utilities .PropertyInfoExtensionsTests+GetProperti esInHierarchy+ChimChim.set_Mary(Int32) |
get_Poppins() | get_Poppins() | PropertyInfoExtensionsTests+GetPropertiesInHierarchy+Cher | System.Data.Entity.Utilities .PropertyInfoExtensionsTests+GetProperti esInHierarchy+ChimChim.get_Poppins() |
set_Poppins(Int32) | set_Poppins(Int32) | PropertyInfoExtensionsTests+GetPropertiesInHierarchy+Cher | System.Data.Entity.Utilities .PropertyInfoExtensionsTests+GetProperti esInHierarchy+ChimChim.set_Poppins(Int32 ) |
get_Bert() | get_Bert() | PropertyInfoExtensionsTests+GetPropertiesInHierarchy+Cher | System.Data.Entity.Utilities .PropertyInfoExtensionsTests+GetProperti esInHierarchy+ChimChim.get_Bert() |
set_Bert(Int32) | set_Bert(Int32) | PropertyInfoExtensionsTests+GetPropertiesInHierarchy+Cher | System.Data.Entity.Utilities .PropertyInfoExtensionsTests+GetProperti esInHierarchy+ChimChim.set_Bert(Int32) |
get_Banks() | get_Banks() | PropertyInfoExtensionsTests+GetPropertiesInHierarchy+Cher | System.Data.Entity.Utilities .PropertyInfoExtensionsTests+GetProperti esInHierarchy+ChimChim.get_Banks() |
set_AdmiralBoom(Int32) | set_AdmiralBoom(Int32) | PropertyInfoExtensionsTests+GetPropertiesInHierarchy+Cher | System.Data.Entity.Utilities .PropertyInfoExtensionsTests+GetProperti esInHierarchy+ChimChim.set_AdmiralBoom (Int32) |
get_MrsBrill() | get_MrsBrill() | PropertyInfoExtensionsTests+GetPropertiesInHierarchy+Cher | System.Data.Entity.Utilities .PropertyInfoExtensionsTests+GetProperti esInHierarchy+ChimChim.get_MrsBrill() |
set_MrsBrill(Int32) | set_MrsBrill(Int32) | PropertyInfoExtensionsTests+GetPropertiesInHierarchy+Cher | System.Data.Entity.Utilities .PropertyInfoExtensionsTests+GetProperti esInHierarchy+ChimChim.set_MrsBrill (Int32) |
get_MrBinnacle() | get_MrBinnacle() | PropertyInfoExtensionsTests+GetPropertiesInHierarchy+Cher | System.Data.Entity.Utilities .PropertyInfoExtensionsTests+GetProperti esInHierarchy+ChimChim.get_MrBinnacle() |
set_MrBinnacle(Int32) | set_MrBinnacle(Int32) | PropertyInfoExtensionsTests+GetPropertiesInHierarchy+Cher | System.Data.Entity.Utilities .PropertyInfoExtensionsTests+GetProperti esInHierarchy+ChimChim.set_MrBinnacle (Int32) |
Gillan() | Gillan() | TypeExtensionsTests+GetDeclaredMethod+Purple | System.Data.Entity.Utilities .TypeExtensionsTests+GetDeclaredMethod+D eep.Gillan() |
get_ElDiabloEnElOjo() | get_ElDiabloEnElOjo() | TypeExtensionsTests+GetProperties+TindersticksII | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties+Tinde rsticksIIVinyl.get_ElDiabloEnElOjo() |
set_ElDiabloEnElOjo(Int32) | set_ElDiabloEnElOjo(Int32) | TypeExtensionsTests+GetProperties+TindersticksII | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties+Tinde rsticksIIVinyl.set_ElDiabloEnElOjo(Int32 ) |
get_ANightIn() | get_ANightIn() | TypeExtensionsTests+GetProperties+TindersticksII | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties+Tinde rsticksIIVinyl.get_ANightIn() |
set_ANightIn(Int32) | set_ANightIn(Int32) | TypeExtensionsTests+GetProperties+TindersticksII | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties+Tinde rsticksIIVinyl.set_ANightIn(Int32) |
get_TinyTears() | get_TinyTears() | TypeExtensionsTests+GetProperties+TindersticksII | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties+Tinde rsticksIIVinyl.get_TinyTears() |
set_TinyTears(Int32) | set_TinyTears(Int32) | TypeExtensionsTests+GetProperties+TindersticksII | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties+Tinde rsticksIIVinyl.set_TinyTears(Int32) |
get_SnowyInFSharpMinor() | get_SnowyInFSharpMinor() | TypeExtensionsTests+GetProperties+TindersticksII | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties+Tinde rsticksIIVinyl.get_SnowyInFSharpMinor() |
set_Seaweed(Int32) | set_Seaweed(Int32) | TypeExtensionsTests+GetProperties+TindersticksII | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties+Tinde rsticksIIVinyl.set_Seaweed(Int32) |
get_VertrauenII() | get_VertrauenII() | TypeExtensionsTests+GetProperties+TindersticksII | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties+Tinde rsticksIIVinyl.get_VertrauenII() |
set_VertrauenII(Int32) | set_VertrauenII(Int32) | TypeExtensionsTests+GetProperties+TindersticksII | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties+Tinde rsticksIIVinyl.set_VertrauenII(Int32) |
get_TalkToMe() | get_TalkToMe() | TypeExtensionsTests+GetProperties+TindersticksII | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties+Tinde rsticksIIVinyl.get_TalkToMe() |
set_TalkToMe(Int32) | set_TalkToMe(Int32) | TypeExtensionsTests+GetProperties+TindersticksII | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties+Tinde rsticksIIVinyl.set_TalkToMe(Int32) |
get_NoMoreAffairs() | get_NoMoreAffairs() | TypeExtensionsTests+GetProperties+TindersticksII | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties+Tinde rsticksIIVinyl.get_NoMoreAffairs() |
set_Singing(Int32) | set_Singing(Int32) | TypeExtensionsTests+GetProperties+TindersticksII | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties+Tinde rsticksIIVinyl.set_Singing(Int32) |
get_ANightIn() | get_ANightIn() | TypeExtensionsTests+GetProperties+TindersticksIIVinyl | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties+Tinde rsticksIICd.get_ANightIn() |
set_ANightIn(Int32) | set_ANightIn(Int32) | TypeExtensionsTests+GetProperties+TindersticksIIVinyl | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties+Tinde rsticksIICd.set_ANightIn(Int32) |
get_TinyTears() | get_TinyTears() | TypeExtensionsTests+GetProperties+TindersticksIIVinyl | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties+Tinde rsticksIICd.get_TinyTears() |
set_TinyTears(Int32) | set_TinyTears(Int32) | TypeExtensionsTests+GetProperties+TindersticksIIVinyl | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties+Tinde rsticksIICd.set_TinyTears(Int32) |
get_SnowyInFSharpMinor() | get_SnowyInFSharpMinor() | TypeExtensionsTests+GetProperties+TindersticksIIVinyl | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties+Tinde rsticksIICd.get_SnowyInFSharpMinor() |
set_Seaweed(Int32) | set_Seaweed(Int32) | TypeExtensionsTests+GetProperties+TindersticksIIVinyl | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties+Tinde rsticksIICd.set_Seaweed(Int32) |
get_VertrauenII() | get_VertrauenII() | TypeExtensionsTests+GetProperties+TindersticksIIVinyl | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties+Tinde rsticksIICd.get_VertrauenII() |
set_VertrauenII(Int32) | set_VertrauenII(Int32) | TypeExtensionsTests+GetProperties+TindersticksIIVinyl | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties+Tinde rsticksIICd.set_VertrauenII(Int32) |
get_TalkToMe() | get_TalkToMe() | TypeExtensionsTests+GetProperties+TindersticksIIVinyl | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties+Tinde rsticksIICd.get_TalkToMe() |
set_TalkToMe(Int32) | set_TalkToMe(Int32) | TypeExtensionsTests+GetProperties+TindersticksIIVinyl | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties+Tinde rsticksIICd.set_TalkToMe(Int32) |
get_NoMoreAffairs() | get_NoMoreAffairs() | TypeExtensionsTests+GetProperties+TindersticksIIVinyl | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties+Tinde rsticksIICd.get_NoMoreAffairs() |
set_Singing(Int32) | set_Singing(Int32) | TypeExtensionsTests+GetProperties+TindersticksIIVinyl | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties+Tinde rsticksIICd.set_Singing(Int32) |
get_TravellingLight() | get_TravellingLight() | TypeExtensionsTests+GetProperties+TindersticksIIVinyl | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties+Tinde rsticksIICd.get_TravellingLight() |
set_TravellingLight(Int32) | set_TravellingLight(Int32) | TypeExtensionsTests+GetProperties+TindersticksIIVinyl | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties+Tinde rsticksIICd.set_TravellingLight(Int32) |
get_CherryBlossoms() | get_CherryBlossoms() | TypeExtensionsTests+GetProperties+TindersticksIIVinyl | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties+Tinde rsticksIICd.get_CherryBlossoms() |
set_CherryBlossoms(Int32) | set_CherryBlossoms(Int32) | TypeExtensionsTests+GetProperties+TindersticksIIVinyl | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties+Tinde rsticksIICd.set_CherryBlossoms(Int32) |
get_VertrauenIII() | get_VertrauenIII() | TypeExtensionsTests+GetProperties+TindersticksIIVinyl | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties+Tinde rsticksIICd.get_VertrauenIII() |
set_VertrauenIII(Int32) | set_VertrauenIII(Int32) | TypeExtensionsTests+GetProperties+TindersticksIIVinyl | System.Data.Entity.Utilities .TypeExtensionsTests+GetProperties+Tinde rsticksIICd.set_VertrauenIII(Int32) |
get_PublicVirtualBase() | get_PublicVirtualBase() | PropertyFilterTests+PropertyFilterTests_Base | System.Data.Entity.ModelConfiguration .Mappers .PropertyFilterTests+PropertyFilterTests _Derived.get_PublicVirtualBase() |
set_PublicVirtualBase(Int32) | set_PublicVirtualBase(Int32) | PropertyFilterTests+PropertyFilterTests_Base | System.Data.Entity.ModelConfiguration .Mappers .PropertyFilterTests+PropertyFilterTests _Derived.set_PublicVirtualBase(Int32) |
get_InternalVirtualBase() | get_InternalVirtualBase() | PropertyFilterTests+PropertyFilterTests_Base | System.Data.Entity.ModelConfiguration .Mappers .PropertyFilterTests+PropertyFilterTests _Derived.get_InternalVirtualBase() |
set_InternalVirtualBase(Int32) | set_InternalVirtualBase(Int32) | PropertyFilterTests+PropertyFilterTests_Base | System.Data.Entity.ModelConfiguration .Mappers .PropertyFilterTests+PropertyFilterTests _Derived.set_InternalVirtualBase(Int32) |
get_ProtectedVirtualBase() | get_ProtectedVirtualBase() | PropertyFilterTests+PropertyFilterTests_Base | System.Data.Entity.ModelConfiguration .Mappers .PropertyFilterTests+PropertyFilterTests _Derived.get_ProtectedVirtualBase() |
set_ProtectedVirtualBase(Int32) | set_ProtectedVirtualBase(Int32) | PropertyFilterTests+PropertyFilterTests_Base | System.Data.Entity.ModelConfiguration .Mappers .PropertyFilterTests+PropertyFilterTests _Derived.set_ProtectedVirtualBase(Int32) |
GetConfigurationType() | GetConfigurationType() | PrimitivePropertyConfigurationTests | System.Data.Entity.ModelConfiguration .Configuration.Properties.Primitive .DateTimePropertyConfigurationTests .GetConfigurationType() |
GetConfigurationType() | GetConfigurationType() | PrimitivePropertyConfigurationTests | System.Data.Entity.ModelConfiguration .Configuration.Properties.Primitive .DecimalPropertyConfigurationTests .GetConfigurationType() |
get_FakeSet1() | get_FakeSet1() | DbSetDiscoveryServiceTests+DerivedDbContextForPropertyOverrideLevel1 | System.Data.Entity.Internal .DbSetDiscoveryServiceTests+DerivedDbCon textForPropertyOverrideLevel2 .get_FakeSet1() |
set_FakeSet1(DbSet<Random>) | set_FakeSet1(DbSet<Random>) | DbSetDiscoveryServiceTests+DerivedDbContextForPropertyOverrideLevel1 | System.Data.Entity.Internal .DbSetDiscoveryServiceTests+DerivedDbCon textForPropertyOverrideLevel2 .set_FakeSet1(DbSet<Random>) |
get_FakeSet1() | get_FakeSet1() | DbSetDiscoveryServiceTests+DerivedDbContextWithInheritanceBLevel1 | System.Data.Entity.Internal .DbSetDiscoveryServiceTests+DerivedDbCon textWithInheritanceBLevel2.get_FakeSet1( ) |
set_FakeSet1(DbSet<Random>) | set_FakeSet1(DbSet<Random>) | DbSetDiscoveryServiceTests+DerivedDbContextWithInheritanceBLevel1 | System.Data.Entity.Internal .DbSetDiscoveryServiceTests+DerivedDbCon textWithInheritanceBLevel2.set_FakeSet1 (DbSet<Random>) |
Statistics
Stat | shouldCall | definedInBaseClass |
---|---|---|
Sum: | 0 | 0 |
Average: | 0 | 0 |
Minimum: | 0 | 0 |
Maximum: | 0 | 0 |
Standard deviation: | 0 | 0 |
Variance: | 0 | 0 |
![]() | Rule warning: A stateless class or structure might be turned into a static type |
// This rule indicates stateless types that might
// eventually be turned into static classes.
warnif count > 0 from t in JustMyCode.Types where
!t.IsStatic &&
!t.IsGeneric &&
t.InstanceFields.Count() == 0 &&
// Don't match:
// --> types that implement some interfaces.
t.NbInterfacesImplemented == 0 &&
// --> or classes that have sub-classes children.
t.NbChildren == 0 &&
// --> or classes that have a base class
((t.IsClass && t.DepthOfDeriveFrom("System.Object".AllowNoMatch()) == 1) ||
t.IsStructure)
select t
View Code Query or Rule BodyView Code Query or Rule Body
893 types matched
types | Full Name |
---|---|
<>f__AnonymousType23 | <>f__AnonymousType23 |
AnyValueParameter | System.Data.Entity.AnyValueParameter |
AnnotationAttributeBuilder | System.Data.Entity .AnnotationAttributeBuilder |
ConventionsScenarioTests | FunctionalTests.ConventionsScenarioTests |
FunctionsScenarioTests | FunctionalTests.FunctionsScenarioTests |
FunctionsScenarioTests+ModificationFunct ions | FunctionalTests .FunctionsScenarioTests+ModificationFunc tions |
NT | DaFunc.NT |
EntitySplitingTests | System.Data.Entity.CodeFirst .EntitySplitingTests |
InheritanceScenarioTests | System.Data.Entity.CodeFirst .InheritanceScenarioTests |
NameUniquificationTests | System.Data.Entity.CodeFirst .NameUniquificationTests |
NameUniquificationTests+Case1 | System.Data.Entity.CodeFirst .NameUniquificationTests+Case1 |
NameUniquificationTests+Case1+Order1 | System.Data.Entity.CodeFirst .NameUniquificationTests+Case1+Order1 |
NameUniquificationTests+Case1+Order2 | System.Data.Entity.CodeFirst .NameUniquificationTests+Case1+Order2 |
NameUniquificationTests+Case2 | System.Data.Entity.CodeFirst .NameUniquificationTests+Case2 |
NameUniquificationTests+Case2+Order1 | System.Data.Entity.CodeFirst .NameUniquificationTests+Case2+Order1 |
NameUniquificationTests+Case2+Order2 | System.Data.Entity.CodeFirst .NameUniquificationTests+Case2+Order2 |
NameUniquificationTests+Case3 | System.Data.Entity.CodeFirst .NameUniquificationTests+Case3 |
NameUniquificationTests+Case3+Order1 | System.Data.Entity.CodeFirst .NameUniquificationTests+Case3+Order1 |
NameUniquificationTests+Case3+Order2 | System.Data.Entity.CodeFirst .NameUniquificationTests+Case3+Order2 |
NameUniquificationTests+Case4 | System.Data.Entity.CodeFirst .NameUniquificationTests+Case4 |
NonPublicPropertyTests | System.Data.Entity.CodeFirst .NonPublicPropertyTests |
GetHashCodeTests | System.Data.Entity.ProductivityApi .GetHashCodeTests |
HasChangesTests | System.Data.Entity.ProductivityApi .HasChangesTests |
DebugCheck | System.Data.Entity.Functionals.Utilities .DebugCheck |
EnumTests | System.Data.Entity.Query.LinqToEntities .EnumTests |
FunctionsTests | System.Data.Entity.Query.LinqToEntities .FunctionsTests |
FunctionsTests+StringFunctions | System.Data.Entity.Query.LinqToEntities .FunctionsTests+StringFunctions |
FunctionsTests+DateTimeFunctions | System.Data.Entity.Query.LinqToEntities .FunctionsTests+DateTimeFunctions |
FunctionsTests+MathFunctions | System.Data.Entity.Query.LinqToEntities .FunctionsTests+MathFunctions |
IncludeTests | System.Data.Entity.Query.LinqToEntities .IncludeTests |
MaterializationTests | System.Data.Entity.Query.LinqToEntities .MaterializationTests |
OrderByLiftingTests | System.Data.Entity.Query.LinqToEntities .OrderByLiftingTests |
ExtraLazyLoadingTests | ProductivityApiTests .ExtraLazyLoadingTests |
ExtraLazyLoadingTests+FakeEntityWithRead onlyCollection | ProductivityApiTests .ExtraLazyLoadingTests+FakeEntityWithRea donlyCollection |
PluralizationServiceTests | ProductivityApiTests .PluralizationServiceTests |
StreamingTests | ProductivityApiTests.StreamingTests |
FunctionsScenarioTests | System.Data.Entity.CodeFirst .FunctionsScenarioTests |
MetadataCachingTestsFixture | System.Data.Entity.Metadata .MetadataCachingTestsFixture |
DebugCheck | System.Data.Entity.Functionals.Utilities .DebugCheck |
JoinTests | System.Data.Entity.Query.LinqToEntities .JoinTests |
IceAndFireModel | System.Data.Entity.Query .StoredProcedures.IceAndFireModel |
StoredProceduresTestFixture | System.Data.Entity.Query .StoredProcedures .StoredProceduresTestFixture |
ArubaDatabaseSeeder | System.Data.Entity.TestModels.ArubaModel .ArubaDatabaseSeeder |
GearsOfWarDatabaseSeeder | System.Data.Entity.TestModels .GearsOfWarModel .GearsOfWarDatabaseSeeder |
FantasyDatabaseSeeder | System.Data.Entity.TestModels .FantasyModel.FantasyDatabaseSeeder |
NamespaceAndNestingTests+Outer1 | ProductivityApiTests .NamespaceAndNestingTests+Outer1 |
NamespaceAndNestingTests+Outer2 | ProductivityApiTests .NamespaceAndNestingTests+Outer2 |
NamespaceAndNestingTests+ImplicitOuter1 | ProductivityApiTests .NamespaceAndNestingTests+ImplicitOuter1 |
NamespaceAndNestingTests+ImplicitOuter2 | ProductivityApiTests .NamespaceAndNestingTests+ImplicitOuter2 |
NamespaceAndNestingTests+ImplicitComplex Outer1 | ProductivityApiTests .NamespaceAndNestingTests+ImplicitComple xOuter1 |
NamespaceAndNestingTests+ImplicitComplex Outer2 | ProductivityApiTests .NamespaceAndNestingTests+ImplicitComple xOuter2 |
NamespaceAndNestingTests+ImplicitEnumOut er1 | ProductivityApiTests .NamespaceAndNestingTests+ImplicitEnumOu ter1 |
NamespaceAndNestingTests+ImplicitEnumOut er2 | ProductivityApiTests .NamespaceAndNestingTests+ImplicitEnumOu ter2 |
NamespaceAndNestingTests+MixedImplicitOu ter1 | ProductivityApiTests .NamespaceAndNestingTests+MixedImplicitO uter1 |
NamespaceAndNestingTests+MixedImplicitOu ter2 | ProductivityApiTests .NamespaceAndNestingTests+MixedImplicitO uter2 |
NamespaceAndNestingTests+MixedImplicitCo mplexOuter1 | ProductivityApiTests .NamespaceAndNestingTests+MixedImplicitC omplexOuter1 |
NamespaceAndNestingTests+MixedImplicitCo mplexOuter2 | ProductivityApiTests .NamespaceAndNestingTests+MixedImplicitC omplexOuter2 |
NamespaceAndNestingTests+MixedEnumImplic itOuter1 | ProductivityApiTests .NamespaceAndNestingTests+MixedEnumImpli citOuter1 |
NamespaceAndNestingTests+MixedEnumImplic itOuter2 | ProductivityApiTests .NamespaceAndNestingTests+MixedEnumImpli citOuter2 |
NamespaceAndNestingTests+NotMappedOuter1 | ProductivityApiTests .NamespaceAndNestingTests+NotMappedOuter 1 |
NamespaceAndNestingTests+NotMappedOuter2 | ProductivityApiTests .NamespaceAndNestingTests+NotMappedOuter 2 |
NamespaceAndNestingTests+NotMappedEnumOu ter1 | ProductivityApiTests .NamespaceAndNestingTests+NotMappedEnumO uter1 |
NamespaceAndNestingTests+NotMappedEnumOu ter2 | ProductivityApiTests .NamespaceAndNestingTests+NotMappedEnumO uter2 |
FindTests+DummyEntity | ProductivityApiTests .FindTests+DummyEntity |
DbFunctionScenarios+EntityFunctionsProxi es | FunctionalTests.ProductivityApi .DbFunctionScenarios+EntityFunctionsProx ies |
MyProject+MyWebServices | My.MyProject+MyWebServices |
NoNamespaceClass | NoNamespaceClass |
NoNamespaceClass+Nested | NoNamespaceClass+Nested |
<>f__AnonymousType1 | <>f__AnonymousType1 |
DbConfigurationTests | System.Data.Entity.DbConfigurationTests |
DbConfigurationTests+SetConfiguration | System.Data.Entity .DbConfigurationTests+SetConfiguration |
DbConfigurationTests+LoadConfiguration | System.Data.Entity .DbConfigurationTests+LoadConfiguration |
DbConfigurationTests+AddDependencyResolv er | System.Data.Entity .DbConfigurationTests+AddDependencyResol ver |
DbConfigurationTests+AddDefaultResolver | System.Data.Entity .DbConfigurationTests+AddDefaultResolver |
DbConfigurationTests+Loaded | System.Data.Entity .DbConfigurationTests+Loaded |
DbConfigurationTests+SetProviderServices | System.Data.Entity .DbConfigurationTests+SetProviderService s |
DbConfigurationTests+SetProviderFactory | System.Data.Entity .DbConfigurationTests+SetProviderFactory |
DbConfigurationTests+SetTransactionHandl er | System.Data.Entity .DbConfigurationTests+SetTransactionHand ler |
DbConfigurationTests+SetExecutionStrateg y | System.Data.Entity .DbConfigurationTests+SetExecutionStrate gy |
DbConfigurationTests+SetPluralizationSer vice | System.Data.Entity .DbConfigurationTests+SetPluralizationSe rvice |
DbConfigurationTests+DependencyResolver | System.Data.Entity .DbConfigurationTests+DependencyResolver |
DbConfigurationTests+SetDatabaseInitiali zer | System.Data.Entity .DbConfigurationTests+SetDatabaseInitial izer |
DbConfigurationTests+SetMigrationSqlGene rator | System.Data.Entity .DbConfigurationTests+SetMigrationSqlGen erator |
DbConfigurationTests+SetManifestTokenRes olver | System.Data.Entity .DbConfigurationTests+SetManifestTokenRe solver |
DbConfigurationTests+SetProviderFactoryR esolver | System.Data.Entity .DbConfigurationTests+SetProviderFactory Resolver |
DbConfigurationTests+SetModelCacheKey | System.Data.Entity .DbConfigurationTests+SetModelCacheKey |
DbConfigurationTests+SetHistoryContext | System.Data.Entity .DbConfigurationTests+SetHistoryContext |
DbConfigurationTests+SetDefaultSpatialSe rvices | System.Data.Entity .DbConfigurationTests+SetDefaultSpatialS ervices |
DbConfigurationTests+SetSpatialServices | System.Data.Entity .DbConfigurationTests+SetSpatialServices |
DbConfigurationTests+SetDatabaseLogForma tter | System.Data.Entity .DbConfigurationTests+SetDatabaseLogForm atter |
DbConfigurationTests+AddInterceptor | System.Data.Entity .DbConfigurationTests+AddInterceptor |
DbConfigurationTests+SetMetadataAnnotati onSerializer | System.Data.Entity .DbConfigurationTests+SetMetadataAnnotat ionSerializer |
DbConfigurationTests+SetContextFactory | System.Data.Entity .DbConfigurationTests+SetContextFactory |
DbConfigurationTests+SetTableExistenceCh ecker | System.Data.Entity .DbConfigurationTests+SetTableExistenceC hecker |
DbConfigurationTypeAttributeTests | System.Data.Entity .DbConfigurationTypeAttributeTests |
IDbAsyncEnumerableExtensionsTests | System.Data.Entity .IDbAsyncEnumerableExtensionsTests |
QueryableExtensionsTests | System.Data.Entity .QueryableExtensionsTests |
QueryableExtensionsTests+AsNotracking_Ge neric | System.Data.Entity .QueryableExtensionsTests+AsNotracking_G eneric |
QueryableExtensionsTests+AsNotracking_No nGeneric | System.Data.Entity .QueryableExtensionsTests+AsNotracking_N onGeneric |
QueryableExtensionsTests+AsStreaming_Gen eric | System.Data.Entity .QueryableExtensionsTests+AsStreaming_Ge neric |
Statistics
Stat |
---|
Sum: |
Average: |
Minimum: |
Maximum: |
Standard deviation: |
Variance: |
![]() | Rule warning: Non-static classes should be instantiated or turned to static |
// Notice that classes only instantiated through reflection, like plug-in root classes
// are matched by this rules.
warnif count > 0
from t in JustMyCode.Types
where t.IsClass &&
//!t.IsPublic && // if you are developing a framework,
// you might not want to match public classes
!t.IsStatic &&
!t.IsAttributeClass && // Attributes class are never seen as instantiated
!t.DeriveFrom("System.MarshalByRefObject".AllowNoMatch()) // Types instantiated through remoting infrastructure
// find the first constructor of t called
let ctorCalled = t.Constructors.FirstOrDefault(ctor => ctor.NbMethodsCallingMe > 0)
// match t if none of its constructors is called.
where ctorCalled == null
select new { t, t.Visibility }View Code Query or Rule BodyView Code Query or Rule Body
2,313 types matched
types | Visibility | Full Name |
---|---|---|
AnnotationAttributeBuilder | Public | System.Data.Entity .AnnotationAttributeBuilder |
DynamicStructuralType | Public | System.Data.Entity.DynamicStructuralType |
TableSplittingTests+E1 | Public | System.Data.Entity.CodeFirst .TableSplittingTests+E1 |
TableSplittingTests+E2 | Public | System.Data.Entity.CodeFirst .TableSplittingTests+E2 |
TableSplittingTests+E3 | Public | System.Data.Entity.CodeFirst .TableSplittingTests+E3 |
TableSplittingTests+B1 | Public | System.Data.Entity.CodeFirst .TableSplittingTests+B1 |
TableSplittingTests+C1 | Public | System.Data.Entity.CodeFirst .TableSplittingTests+C1 |
TableSplittingTests+Z | Public | System.Data.Entity.CodeFirst .TableSplittingTests+Z |
TptMappingTests+AA | Public | System.Data.Entity.CodeFirst .TptMappingTests+AA |
TptMappingTests+AB | Public | System.Data.Entity.CodeFirst .TptMappingTests+AB |
TptMappingTests+BA | Public | System.Data.Entity.CodeFirst .TptMappingTests+BA |
TptMappingTests+BB | Public | System.Data.Entity.CodeFirst .TptMappingTests+BB |
TableInfo | Public | System.Data.Entity.Migrations.TableInfo |
ColumnInfo | Public | System.Data.Entity.Migrations.ColumnInfo |
UniqueConstraintInfo | Public | System.Data.Entity.Migrations .UniqueConstraintInfo |
PrimaryKeyConstraintInfo | Public | System.Data.Entity.Migrations .PrimaryKeyConstraintInfo |
ReferentialConstraintInfo | Public | System.Data.Entity.Migrations .ReferentialConstraintInfo |
KeyColumnUsageInfo | Public | System.Data.Entity.Migrations .KeyColumnUsageInfo |
GoldCustomer | Public | System.Data.Entity.Migrations .GoldCustomer |
OrderLine | Public | System.Data.Entity.Migrations.OrderLine |
MigrationsStore | Public | System.Data.Entity.Migrations .MigrationsStore |
WithGuidKey | Public | System.Data.Entity.Migrations .WithGuidKey |
ShopContext_v1b | Public | System.Data.Entity.Migrations .ShopContext_v1b |
ShopContextConfiguration_v1b | Public | System.Data.Entity.Migrations .ShopContextConfiguration_v1b |
ShopContext_v4 | Public | System.Data.Entity.Migrations .ShopContext_v4 |
ShopContext_v5 | Public | System.Data.Entity.Migrations .ShopContext_v5 |
ShopContext_v6 | Public | System.Data.Entity.Migrations .ShopContext_v6 |
EmptyModel | Public | System.Data.Entity.Migrations.EmptyModel |
NonEmptyModel | Public | System.Data.Entity.Migrations .NonEmptyModel |
MigrationsBlog | Public | System.Data.Entity.Migrations .MigrationsBlog |
MigrationsEmployee | Internal | System.Data.Entity.Migrations .MigrationsEmployee |
TypeCasts | Public | System.Data.Entity.Migrations.TypeCasts |
Comment | Public | System.Data.Entity.Migrations.Comment |
ProcessedTransactionContext | Public | System.Data.Entity.Migrations .ProcessedTransactionContext |
ProcessedTransaction | Public | System.Data.Entity.Migrations .ProcessedTransaction |
Role | Public | System.Data.Entity.Migrations .UserRoles_v1.Role |
User | Public | System.Data.Entity.Migrations .UserRoles_v1.User |
Role | Public | System.Data.Entity.Migrations .UserRoles_v2.Role |
User2 | Public | System.Data.Entity.Migrations .UserRoles_v2.User2 |
TableRenameDerived1 | Public | System.Data.Entity.Migrations .OSpaceRenames_v1.TableRenameDerived1 |
TableRenameManyManyLeft1 | Public | System.Data.Entity.Migrations .OSpaceRenames_v1 .TableRenameManyManyLeft1 |
TableRenameManyManyRight | Public | System.Data.Entity.Migrations .OSpaceRenames_v1 .TableRenameManyManyRight |
TableRenameEntitySplit1 | Public | System.Data.Entity.Migrations .OSpaceRenames_v1 .TableRenameEntitySplit1 |
TableRenameTableSplit1 | Public | System.Data.Entity.Migrations .OSpaceRenames_v1.TableRenameTableSplit1 |
TableRenameTableSplitPayload1 | Public | System.Data.Entity.Migrations .OSpaceRenames_v1 .TableRenameTableSplitPayload1 |
ColumnRenameDerived | Public | System.Data.Entity.Migrations .OSpaceRenames_v1.ColumnRenameDerived |
ComplexType | Public | System.Data.Entity.Migrations .OSpaceRenames_v1.ComplexType |
IaParent | Public | System.Data.Entity.Migrations .OSpaceRenames_v1.IaParent |
OrphanedColumn1 | Public | System.Data.Entity.Migrations .OSpaceRenames_v1.OrphanedColumn1 |
OrphanedColumnParent | Public | System.Data.Entity.Migrations .OSpaceRenames_v1.OrphanedColumnParent |
TableRenameDerived2 | Public | System.Data.Entity.Migrations .OSpaceRenames_v2.TableRenameDerived2 |
TableRenameManyManyLeft2 | Public | System.Data.Entity.Migrations .OSpaceRenames_v2 .TableRenameManyManyLeft2 |
TableRenameManyManyRight | Public | System.Data.Entity.Migrations .OSpaceRenames_v2 .TableRenameManyManyRight |
TableRenameEntitySplit2 | Public | System.Data.Entity.Migrations .OSpaceRenames_v2 .TableRenameEntitySplit2 |
TableRenameTableSplit2 | Public | System.Data.Entity.Migrations .OSpaceRenames_v2.TableRenameTableSplit2 |
TableRenameTableSplitPayload2 | Public | System.Data.Entity.Migrations .OSpaceRenames_v2 .TableRenameTableSplitPayload2 |
ColumnRenameDerived | Public | System.Data.Entity.Migrations .OSpaceRenames_v2.ColumnRenameDerived |
ComplexType | Public | System.Data.Entity.Migrations .OSpaceRenames_v2.ComplexType |
IaParent | Public | System.Data.Entity.Migrations .OSpaceRenames_v2.IaParent |
OrphanedColumn2 | Public | System.Data.Entity.Migrations .OSpaceRenames_v2.OrphanedColumn2 |
OrphanedColumnParent | Public | System.Data.Entity.Migrations .OSpaceRenames_v2.OrphanedColumnParent |
AdvancedMappingScenarioTests+SomeRole | Public | FunctionalTests .AdvancedMappingScenarioTests+SomeRole |
AdvancedMappingScenarioTests+SomeUser | Public | FunctionalTests .AdvancedMappingScenarioTests+SomeUser |
AdvancedMappingScenarioTests+UserRole | Public | FunctionalTests .AdvancedMappingScenarioTests+UserRole |
AdvancedMappingScenarioTests+MaxLengthPr operties | Public | FunctionalTests .AdvancedMappingScenarioTests+MaxLengthP roperties |
AdvancedMappingScenarioTests+EntityWithC onfiguredDuplicateColumn | Public | FunctionalTests .AdvancedMappingScenarioTests+EntityWith ConfiguredDuplicateColumn |
AdvancedMappingScenarioTests+EntityWithD escA | Public | FunctionalTests .AdvancedMappingScenarioTests+EntityWith DescA |
AdvancedMappingScenarioTests+EntityWithD escB | Public | FunctionalTests .AdvancedMappingScenarioTests+EntityWith DescB |
AdvancedMappingScenarioTests+EntityWithD escC | Public | FunctionalTests .AdvancedMappingScenarioTests+EntityWith DescC |
AdvancedMappingScenarioTests+ComplexWith Desc | Public | FunctionalTests .AdvancedMappingScenarioTests+ComplexWit hDesc |
AdvancedMappingScenarioTests+SplitProduc t | Public | FunctionalTests .AdvancedMappingScenarioTests+SplitProdu ct |
AdvancedMappingScenarioTests+SplitProduc tDetail | Public | FunctionalTests .AdvancedMappingScenarioTests+SplitProdu ctDetail |
AdvancedMappingScenarioTests+DecimalKey | Public | FunctionalTests .AdvancedMappingScenarioTests+DecimalKey |
AdvancedMappingScenarioTests+DecimalDepe ndent | Public | FunctionalTests .AdvancedMappingScenarioTests+DecimalDep endent |
AdvancedMappingScenarioTests+SingleAbstr act | Public | FunctionalTests .AdvancedMappingScenarioTests+SingleAbst ract |
AdvancedMappingScenarioTests+StockOrder | Public | FunctionalTests .AdvancedMappingScenarioTests+StockOrder |
AdvancedMappingScenarioTests+Organizatio n | Public | FunctionalTests .AdvancedMappingScenarioTests+Organizati on |
AdvancedMappingScenarioTests+Location | Public | FunctionalTests .AdvancedMappingScenarioTests+Location |
AdvancedMappingScenarioTests+CodePlex218 1+LoginInformation | Public | FunctionalTests .AdvancedMappingScenarioTests+CodePlex21 81+LoginInformation |
AdvancedMappingScenarioTests+CodePlex218 1+Administrator | Public | FunctionalTests .AdvancedMappingScenarioTests+CodePlex21 81+Administrator |
AssociationScenarioTests+Dependent_17294 9 | Public | FunctionalTests .AssociationScenarioTests+Dependent_1729 49 |
AssociationScenarioTests+Principal_17294 9 | Public | FunctionalTests .AssociationScenarioTests+Principal_1729 49 |
AssociationScenarioTests+Principal_15900 1 | Public | FunctionalTests .AssociationScenarioTests+Principal_1590 01 |
AssociationScenarioTests+Dependent_15900 1a | Public | FunctionalTests .AssociationScenarioTests+Dependent_1590 01a |
AssociationScenarioTests+Dependent_15900 1b | Public | FunctionalTests .AssociationScenarioTests+Dependent_1590 01b |
AssociationScenarioTests+PrincipalWithNa v_159001a | Public | FunctionalTests .AssociationScenarioTests+PrincipalWithN av_159001a |
AssociationScenarioTests+DependentWithNa v_159001a | Public | FunctionalTests .AssociationScenarioTests+DependentWithN av_159001a |
AssociationScenarioTests+Principal_18190 9 | Public | FunctionalTests .AssociationScenarioTests+Principal_1819 09 |
AssociationScenarioTests+Dependent_18190 9 | Public | FunctionalTests .AssociationScenarioTests+Dependent_1819 09 |
AssociationScenarioTests+Order_181909 | Public | FunctionalTests .AssociationScenarioTests+Order_181909 |
AssociationScenarioTests+OrderLine_18190 9 | Public | FunctionalTests .AssociationScenarioTests+OrderLine_1819 09 |
AssociationScenarioTests+Dependent_16234 8 | Public | FunctionalTests .AssociationScenarioTests+Dependent_1623 48 |
AssociationScenarioTests+Dependent_6927 | Public | FunctionalTests .AssociationScenarioTests+Dependent_6927 |
AssociationScenarioTests+Principal_6927 | Public | FunctionalTests .AssociationScenarioTests+Principal_6927 |
AssociationScenarioTests+DependentWithNu llableFkIdentifying | Public | FunctionalTests .AssociationScenarioTests+DependentWithN ullableFkIdentifying |
AssociationScenarioTests+PrincipalWithNu llableFkIdentifying | Public | FunctionalTests .AssociationScenarioTests+PrincipalWithN ullableFkIdentifying |
AssociationScenarioTests+DependentWithNu llableFk | Public | FunctionalTests .AssociationScenarioTests+DependentWithN ullableFk |
AssociationScenarioTests+PrincipalWithNu llableFk | Public | FunctionalTests .AssociationScenarioTests+PrincipalWithN ullableFk |
AssociationScenarioTests+ProductManyToMa nyTableNaming | Public | FunctionalTests .AssociationScenarioTests+ProductManyToM anyTableNaming |
AssociationScenarioTests+SupplierManyToM anyTableNaming | Public | FunctionalTests .AssociationScenarioTests+SupplierManyTo ManyTableNaming |
Statistics
Stat | Visibility |
---|---|
Sum: | 0 |
Average: | 0 |
Minimum: | 0 |
Maximum: | 0 |
Standard deviation: | 0 |
Variance: | 0 |
![]() | Rule warning: Avoid the Singleton pattern |
warnif count > 0
from t in Application.Types
where !t.IsStatic && !t.IsAbstract && (t.IsClass || t.IsStructure)
// All ctors of a singleton are private
where t.Constructors.Where(ctor => !ctor.IsPrivate).Count() == 0
// A singleton contains one static field of its parent type, to reference the unique instance
let staticFieldInstances = t.StaticFields.WithFieldType(t)
where staticFieldInstances.Count() == 1
select new { t, staticFieldInstance = staticFieldInstances.First() }
// The Singleton pattern consists in syntactically enforcing that a class
// has just one unique instance.
// At first glance, this pattern looks appealing and it is widely used.
// However, we discourage you from using singleton classes because experience
// shows that singletons often result in less testable and less maintainable code.
// More details available in these discussions:
// http://codebetter.com/patricksmacchia/2011/05/04/back-to-basics-usage-of-static-members/
// http://adamschepis.com/blog/2011/05/02/im-adam-and-im-a-recovering-singleton-addict/
View Code Query or Rule BodyView Code Query or Rule Body
4 types matched
types | staticFieldInstance | Full Name |
---|---|---|
GenericProviderFactory<T> | Instance | System.Data.Entity .GenericProviderFactory<T> |
MutableResolver | _instance | System.Data.Entity.MutableResolver |
WrappingAdoNetProvider<TBase> | Instance | System.Data.Entity.WrappingProvider .WrappingAdoNetProvider<TBase> |
WrappingEfProvider<TAdoNetBase,TEfBase> | Instance | System.Data.Entity.WrappingProvider .WrappingEfProvider<TAdoNetBase,TEfBase> |
Statistics
Stat | staticFieldInstance |
---|---|
Sum: | 0 |
Average: | 0 |
Minimum: | 0 |
Maximum: | 0 |
Standard deviation: | 0 |
Variance: | 0 |
![]() | Rule warning: Don't assign static fields from instance methods |
// Assigning static fields from instance methods leads to
// poorly maintainable and non thread-safe code.
// It is advised to assign static fields inline or from class constructor.
warnif count > 0
from f in Application.Fields where
f.IsStatic &&
!f.IsLiteral &&
!f.IsInitOnly &&
!f.IsGeneratedByCompiler &&
// Contract API define such a insideContractEvaluation static field
f.Name != "insideContractEvaluation"
let assignedBy = f.MethodsAssigningMe.Where(m => !m.IsStatic)
where assignedBy .Count() > 0
select new { f, assignedBy }View Code Query or Rule BodyView Code Query or Rule Body
12 fields matched
fields | assignedBy | Full Name |
---|---|---|
_assemblyCount | 1 method | System.Data.Entity.DynamicAssembly ._assemblyCount |
_isSqlAzure | 1 method | System.Data.Entity.Update .GuidIdentityColumnUpdateTests ._isSqlAzure |
_context2Static | 1 method | ProductivityApiTests .LinqTests+ClassWithContextFieldAndOther Fields._context2Static |
_context3Static | 1 method | ProductivityApiTests .LinqTests+ClassWithContextFieldAndOther Fields._context3Static |
ValidateWithoutContextFunc | 1 method | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .EntityWithPropertyLevelCustomValidation Attributes.ValidateWithoutContextFunc |
ValidateWithContextFunc | 1 method | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .EntityWithPropertyLevelCustomValidation Attributes.ValidateWithContextFunc |
ValidateWithoutContextFunc | 1 method | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .EntityWithEntityLevelCustomValidationAt tributes.ValidateWithoutContextFunc |
ValidateWithContextFunc | 1 method | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .EntityWithEntityLevelCustomValidationAt tributes.ValidateWithContextFunc |
ValidateWithoutContextFunc | 3 methods | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .ComplexTypeWithTypeLevelCustomValidatio nAttributes.ValidateWithoutContextFunc |
ValidateWithContextFunc | 3 methods | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .ComplexTypeWithTypeLevelCustomValidatio nAttributes.ValidateWithContextFunc |
ValidateWithoutContextFunc | 1 method | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .EntityWithComplexTypeLevelCustomValidat ionAttributes.ValidateWithoutContextFunc |
CustomValidateFunc | 1 method | Microsoft.Data.CodeFirst.FunctionalTests .ProductivityApi.Validation .EntityWithAllKindsOfValidation .CustomValidateFunc |
Statistics
Stat | assignedBy |
---|---|
Sum: | 0 |
Average: | 0 |
Minimum: | 0 |
Maximum: | 0 |
Standard deviation: | 0 |
Variance: | 0 |
![]() | Rule warning: Avoid empty interfaces |
warnif count > 0 from t in JustMyCode.Types where
t.IsInterface &&
t.NbMethods == 0
select new { t, t.TypesThatImplementMe }
// Interfaces define members that provide a behavior
// or usage contract. The functionality described by
// the interface can be adopted by any type,
// regardless of where the type appears in the
// inheritance hierarchy. A type implements an
// interface by providing implementations for the
// interface's members. An empty interface does not
// define any members, and as such, does not define
// a contract that can be implemented.
// If your design includes empty interfaces that
// types are expected to implement, you are probably
// using an interface as a marker, or a way of
// identifying a group of types. If this identification
// will occur at runtime, the correct way to accomplish
// this is to use a custom attribute. Use the presence
// or absence of the attribute, or the attribute's
// properties, to identify the target types. If the
// identification must occurs at compile time, then using
// an empty interface is acceptable.View Code Query or Rule BodyView Code Query or Rule Body
22 types matched
types | TypesThatImplementMe | Full Name |
---|---|---|
TypeExtensionsTests+IsValidStructuralTyp e+AnInterface1 | 0 type | System.Data.Entity.Utilities .TypeExtensionsTests+IsValidStructuralTy pe+AnInterface1 |
TypeExtensionsTests+TryGetElementType+IR oleCollection2014 | 1 type | System.Data.Entity.Utilities .TypeExtensionsTests+TryGetElementType+I RoleCollection2014 |
TypeExtensionsTests+GetDeclaredMethod+II nterface1 | 3 types | System.Data.Entity.Utilities .TypeExtensionsTests+GetDeclaredMethod+I Interface1 |
TypeExtensionsTests+GetDeclaredMethod+II nterface2 | 1 type | System.Data.Entity.Utilities .TypeExtensionsTests+GetDeclaredMethod+I Interface2 |
TypeExtensionsTests+GetDeclaredConstruct orsEtc+IInterface1 | 3 types | System.Data.Entity.Utilities .TypeExtensionsTests+GetDeclaredConstruc torsEtc+IInterface1 |
TypeExtensionsTests+GetDeclaredConstruct orsEtc+IInterface2 | 1 type | System.Data.Entity.Utilities .TypeExtensionsTests+GetDeclaredConstruc torsEtc+IInterface2 |
TypeExtensionsTests+IsInterface+IPython | 2 types | System.Data.Entity.Utilities .TypeExtensionsTests+IsInterface+IPython |
TypeExtensionsTests+IsAbstract+IPython | 2 types | System.Data.Entity.Utilities .TypeExtensionsTests+IsAbstract+IPython |
TypeExtensionsTests+IsSealed+IPython | 2 types | System.Data.Entity.Utilities .TypeExtensionsTests+IsSealed+IPython |
TypeExtensionsTests+IsEnum+IPython | 0 type | System.Data.Entity.Utilities .TypeExtensionsTests+IsEnum+IPython |
TypeExtensionsTests+IsPrimitive+IClease | 0 type | System.Data.Entity.Utilities .TypeExtensionsTests+IsPrimitive+IClease |
AppConfigDependencyResolverTests+IPilkin gton | 0 type | System.Data.Entity.Infrastructure .DependencyResolution .AppConfigDependencyResolverTests+IPilki ngton |
CachingDependencyResolverTests+IPilkingt on | 0 type | System.Data.Entity.Infrastructure .DependencyResolution .CachingDependencyResolverTests+IPilking ton |
CachingDependencyResolverTests+IGervais | 0 type | System.Data.Entity.Infrastructure .DependencyResolution .CachingDependencyResolverTests+IGervais |
CompositeResolverTests+IPilkington | 0 type | System.Data.Entity.Infrastructure .DependencyResolution .CompositeResolverTests+IPilkington |
DbConfigurationEventArgsTests+ReplaceSer vice+IPilkington | 0 type | System.Data.Entity.Infrastructure .DependencyResolution .DbConfigurationEventArgsTests+ReplaceSe rvice+IPilkington |
DbDependencyResolverExtensionsTests+IPil kington | 0 type | System.Data.Entity.Infrastructure .DependencyResolution .DbDependencyResolverExtensionsTests+IPi lkington |
ResolverChainTests+IPilkington | 1 type | System.Data.Entity.Infrastructure .DependencyResolution .ResolverChainTests+IPilkington |
SingletonDependencyResolverTests+IPilkin gton | 0 type | System.Data.Entity.Infrastructure .DependencyResolution .SingletonDependencyResolverTests+IPilki ngton |
SingletonDependencyResolverTests+IGervai s | 0 type | System.Data.Entity.Infrastructure .DependencyResolution .SingletonDependencyResolverTests+IGerva is |
WrappingDependencyResolverTests+IPilking ton | 0 type | System.Data.Entity.Infrastructure .DependencyResolution .WrappingDependencyResolverTests+IPilkin gton |
HandlerBaseTests+ICustomHandler | 0 type | System.Data.Entity.Infrastructure.Design .HandlerBaseTests+ICustomHandler |
Statistics
Stat | TypesThatImplementMe |
---|---|
Sum: | 0 |
Average: | 0 |
Minimum: | 0 |
Maximum: | 0 |
Standard deviation: | 0 |
Variance: | 0 |
![]() | Avoid types initialization cycles |
warnif count > 0
// The class constructor (also called static constructor, and named cctor in IL code)
// of a type, if any, is executed by the CLR at runtime, the first time the type is used.
// A cctor doesn't need to be explicitely declared in C# or VB.NET, to exist in compiled IL code.
// Having a static field inline initialization is enought to have
// the cctor implicitely declared in the parent class or structure.
//
// If the cctor of a type t1 is using the type t2 and if the cctor of t2 is using t1,
// some type initialization unexpected and hard-to-diagnose buggy behavior can occur.
// Such a cyclic chain of initialization is not necessarily limited to two types
// and can embrace N types in the general case.
// More information on types initialization cycles can be found here:
// http://msmvps.com/blogs/jon_skeet/archive/2012/04/07/1808561.aspx
// The present code rule enumerates types initialization cycles.
// Some false positives can appear if some lambda expressions are defined
// in cctors or in methods called by cctors. In such situation, this rule
// considers these lambda expressions as executed at type initialization time,
// while it is not necessarily the case.
// Types initialization cycle can only happen between types of an assembly.
from assembly in Application.Assemblies
let cctorSuspects = assembly.ChildMethods.Where(
m => m.IsClassConstructor &&
// Optimization: types involved in a type cycle necessarily don't have type level.
m.ParentType.Level == null)
where cctorSuspects.Count() > 1
let typesSuspects = cctorSuspects.ParentTypes().ToHashSet()
//
// dicoTmp associates to each type suspect T, a set of types from typesSuspects
// that contains at least a method or a field used directly or indirectly by the cctor of T.
//
let dicoTmp = cctorSuspects.ToDictionary(
cctor => cctor.ParentType,
cctor => ((IMember)cctor).ToEnumerable().FillIterative(
members => from m in members
from mUsed in (m is IMethod) ? (m as IMethod).MembersUsed : new IMember[0]
where mUsed.ParentAssembly == assembly
select mUsed)
.DefinitionDomain
.Select(m => m.ParentType) // Don't need .Distinct() here, because of ToHashSet() below.
.Except(cctor.ParentType)
.Intersect(typesSuspects)
.ToHashSet()
)
//
// dico associates to each type suspect T, the set of types initialized (directly or indirectly)
// by the initialization of T. This second step is needed, because if a cctor of a type T1
// calls a member of a type T2, not only the cctor of T1 triggers the initialization of T2,
// but also it triggers the initialization of all types that are initialized by T2 initialization.
//
let dico = typesSuspects.Where(t => dicoTmp[t].Count() > 0).ToDictionary(
typeSuspect => typeSuspect,
typeSuspect => typeSuspect.ToEnumerable().FillIterative(
types => from t in types
from tUsed in dicoTmp[t]
select tUsed)
.DefinitionDomain
.Except(typeSuspect)
.ToHashSet()
)
//
// Now that dico is prepared, detect the cctor cycles
//
from t in dico.Keys
// Thanks to the work done to build dico, it is now pretty easy
// to spot types involved in an initialization cyle with t!
let usersAndUseds = from tTmp in dico[t]
where dico.ContainsKey(tTmp) && dico[tTmp].Contains(t)
select tTmp
where usersAndUseds.Count() > 0
// Here we've found type(s) both using and used by the suspect type.
// A cycle involving the type t is found!
let typeInitCycle = usersAndUseds.Append(t)
// Compute methodsCalled and fieldsUsed, useful to explore
// how a cctor involved in a type initialization cycle, triggers other type initialization.
let methodsCalledDepth = assembly.ChildMethods.DepthOfIsUsedBy(t.ClassConstructor)
let fieldsUsedDepth = assembly.ChildFields.DepthOfIsUsedBy(t.ClassConstructor)
let methodsCalled = methodsCalledDepth.DefinitionDomain.OrderBy(m => methodsCalledDepth[m]).ToArray()
let fieldsUsed = fieldsUsedDepth.DefinitionDomain.OrderBy(f => fieldsUsedDepth[f]).ToArray()
// Use the tick box to: Group cctors methods By parent types
select new { t.ClassConstructor,
cctorsCycle= typeInitCycle.Select(tTmp => tTmp.ClassConstructor),
// methodsCalled and fieldsUsed are members used directly and indirectly by the cctor.
// Export these members to the dependency graph (right click the cell Export/Append ... to the Graph)
// and see how the cctor trigger the initialization of other types
methodsCalled,
fieldsUsed
}View Code Query or Rule BodyView Code Query or Rule Body
No methods matched
API Breaking Changes
|
![]() | API Breaking Changes: Types |
// This rule warns if a publicly visible type is
// not publicly visible anymore or if it has been removed.
// Such type can break the code of your clients.
warnif count > 0 from t in codeBase.OlderVersion().Application.Types
where t.IsPubliclyVisible &&
// The type has been removed and its parent assembly hasn't been removed ...
( (t.WasRemoved() && !t.ParentAssembly.WasRemoved()) ||
// ... or the type is not publicly visible anymore
!t.WasRemoved() && !t.NewerVersion().IsPubliclyVisible)
select new { t,
NewVisibility = (t.WasRemoved() ? " " : t.NewerVersion().Visibility.ToString()) }
View Code Query or Rule BodyView Code Query or Rule Body
No types matched
![]() | API Breaking Changes: Methods |
// This rule warns if a publicly visible method is
// not publicly visible anymore or if it has been removed.
// Such method can break the code of your clients.
warnif count > 0 from m in codeBase.OlderVersion().Application.Methods
where m.IsPubliclyVisible &&
// The method has been removed and its parent type hasn't been removed ...
( (m.WasRemoved() && !m.ParentType.WasRemoved()) ||
// ... or the method is not publicly visible anymore
!m.WasRemoved() && !m.NewerVersion().IsPubliclyVisible)
select new { m,
NewVisibility = (m.WasRemoved() ? " " : m.NewerVersion().Visibility.ToString()) }View Code Query or Rule BodyView Code Query or Rule Body
No methods matched
![]() | API Breaking Changes: Fields |
// This rule warns if a publicly visible field is
// not publicly visible anymore or if it has been removed.
// Such field can break the code of your clients.
warnif count > 0 from f in codeBase.OlderVersion().Application.Fields
where f.IsPubliclyVisible &&
// The field has been removed and its parent type hasn't been removed ...
( (f.WasRemoved() && !f.ParentType.WasRemoved()) ||
// ... or the field is not publicly visible anymore
!f.WasRemoved() && !f.NewerVersion().IsPubliclyVisible)
select new { f,
NewVisibility = (f.WasRemoved() ? " " : f.NewerVersion().Visibility.ToString()) }View Code Query or Rule BodyView Code Query or Rule Body
No fields matched
![]() | API Breaking Changes: Interfaces and Abstract Classes |
// This rule warns if a publicly visible interface or abstract class
// has been changed and contains new abstract methods or
// if some abstract methods have been removed.
// This can break the code of clients
// that implement such interface or derive from such abstract class.
warnif count > 0 from tNewer in Application.Types where
(tNewer.IsInterface || tNewer.IsClass && tNewer.IsAbstract) &&
tNewer.IsPubliclyVisible &&
tNewer.IsPresentInBothBuilds()
let tOlder = tNewer.OlderVersion() where tOlder.IsPubliclyVisible
let methodsRemoved = tOlder.Methods.Where(m => m.IsAbstract && m.WasRemoved())
let methodsAdded = tNewer.Methods.Where(m => m.IsAbstract && m.WasAdded())
where methodsAdded.Count() > 0 || methodsRemoved.Count() > 0
select new { tNewer, methodsAdded, methodsRemoved }View Code Query or Rule BodyView Code Query or Rule Body
No types matched
![]() | Broken serializable types |
// Find breaking changes in types marked with SerializableAttribute.
warnif count > 0
from t in Application.Types where
// Collect types tagged with SerializableAttribute
t.HasAttribute("System.SerializableAttribute".AllowNoMatch()) &&
!t.IsDelegate &&
t.IsPresentInBothBuilds() &&
t.HasAttribute(t)
// Find newer and older versions of NonSerializedAttribute
let newNonSerializedAttribute = ThirdParty.Types.WithFullName("System.NonSerializedAttribute").SingleOrDefault()
let oldNonSerializedAttribute = newNonSerializedAttribute == null ? null : newNonSerializedAttribute.OlderVersion()
// Find added or removed fields not marked with NonSerializedAttribute
let addedInstanceField = from f in t.InstanceFields where
f.WasAdded() &&
(newNonSerializedAttribute == null || !f.HasAttribute(newNonSerializedAttribute))
select f
let removedInstanceField = from f in t.OlderVersion().InstanceFields where
f.WasRemoved() &&
(oldNonSerializedAttribute == null || !f.HasAttribute(oldNonSerializedAttribute))
select f
where addedInstanceField.Count() > 0 || removedInstanceField.Count() > 0
select new { t, addedInstanceField, removedInstanceField }
// From http://msdn.microsoft.com/library/system.serializableattribute.aspx :
// All the public and private fields in a type that are marked by the
// SerializableAttribute are serialized by default, unless the type
// implements the ISerializable interface to override the serialization process.
// The default serialization process excludes fields that are marked
// with the NonSerializedAttribute attribute.View Code Query or Rule BodyView Code Query or Rule Body
No types matched
![]() | Avoid transforming immutable types into mutable types |
// Immutability is a strong property on a type.
// Breaking immutability can result in serious problem for an algorithm consummer
// that has been written taking account of the type immutability.
// To visualize changes in code, right-click a matched type and select:
// - Compare older and newer versions of source file
// - Compare older and newer versions disassembled with Reflector
warnif count > 0
from t in Application.Types where
t.IsPresentInBothBuilds() &&
!t.IsStatic &&
!t.IsImmutable &&
t.OlderVersion().IsImmutable
let mutableFields = from f in t.InstanceFields where !f.IsImmutable select f
select new { t, mutableFields }
View Code Query or Rule BodyView Code Query or Rule Body
No types matched
![]() | Avoid changing enumerations Flags status |
// Being tagged with the Flags attribute is a strong property for an enumeration.
// Changing the Flags status of an enumeration has significant impact for its client.
warnif count > 0
let oldFlags = codeBase.OlderVersion().ThirdParty.Types.WithFullName("System.FlagsAttribute").SingleOrDefault()
let newFlags = ThirdParty.Types.WithFullName("System.FlagsAttribute").SingleOrDefault()
where oldFlags != null && newFlags != null
from t in Application.Types where
t.IsEnumeration &&
t.IsPresentInBothBuilds()
let isFlags = t.HasAttribute(newFlags)
let wasFlags = t.OlderVersion().HasAttribute(oldFlags)
where isFlags != wasFlags
select new { t, isFlags, wasFlags }
View Code Query or Rule BodyView Code Query or Rule Body
No types matched
![]() | API: New publicly visible types |
// List types that are new in the public surface of your assemblies
from t in Application.Types
where t.IsPubliclyVisible &&
// The type has been removed and its parent assembly hasn't been removed ...
( (t.WasAdded() && !t.ParentAssembly.WasAdded()) ||
// ... or the type existed but was not publicly visible
!t.WasAdded() && !t.OlderVersion().IsPubliclyVisible)
select new { t,
OldVisibility = (t.WasAdded() ? " " : t.OlderVersion().Visibility.ToString()) }View Code Query or Rule BodyView Code Query or Rule Body
No types matched
![]() | API: New publicly visible methods |
// List methods that are new in the public surface of your assemblies
from m in Application.Methods
where m.IsPubliclyVisible &&
// The method has been removed and its parent assembly hasn'm been removed ...
( (m.WasAdded() && !m.ParentType.WasAdded()) ||
// ... or the t existed but was not publicly visible
!m.WasAdded() && !m.OlderVersion().IsPubliclyVisible)
select new { m,
OldVisibility = (m.WasAdded() ? " " : m.OlderVersion().Visibility.ToString()) }View Code Query or Rule BodyView Code Query or Rule Body
No methods matched
![]() | API: New publicly visible fields |
// List fields that are new in the public surface of your assemblies
from f in Application.Fields
where f.IsPubliclyVisible &&
// The method has been removed and its parent assembly hasn'f been removed ...
( (f.WasAdded() && !f.ParentType.WasAdded()) ||
// ... or the t existed but was not publicly visible
!f.WasAdded() && !f.OlderVersion().IsPubliclyVisible)
select new { f,
OldVisibility = (f.WasAdded() ? " " : f.OlderVersion().Visibility.ToString()) }View Code Query or Rule BodyView Code Query or Rule Body
No fields matched
Code Diff Summary
|
![]() | New assemblies |
from a in Application.Assemblies where a.WasAdded()
select new { a, a.NbLinesOfCode }
View Code Query or Rule BodyView Code Query or Rule Body
No assemblies matched
![]() | Assemblies removed |
from a in codeBase.OlderVersion().Application.Assemblies where a.WasRemoved()
select new { a, a.NbLinesOfCode }View Code Query or Rule BodyView Code Query or Rule Body
No assemblies matched
![]() | Assemblies where code was changed |
from a in Application.Assemblies where a.CodeWasChanged()
select new { a, a.NbLinesOfCode,
oldNbLinesOfCode = a.OlderVersion().NbLinesOfCode.GetValueOrDefault() ,
delta = (int) a.NbLinesOfCode.GetValueOrDefault() - a.OlderVersion().NbLinesOfCode.GetValueOrDefault() }View Code Query or Rule BodyView Code Query or Rule Body
No assemblies matched
![]() | New namespaces |
from n in Application.Namespaces where
!n.ParentAssembly.WasAdded() &&
n.WasAdded()
select new { n, n.NbLinesOfCode }
View Code Query or Rule BodyView Code Query or Rule Body
No namespaces matched
![]() | Namespaces removed |
from n in codeBase.OlderVersion().Application.Namespaces where
!n.ParentAssembly.WasRemoved() &&
n.WasRemoved()
select new { n, n.NbLinesOfCode }
View Code Query or Rule BodyView Code Query or Rule Body
No namespaces matched
![]() | Namespaces where code was changed |
from n in Application.Namespaces where n.CodeWasChanged()
select new { n, n.NbLinesOfCode,
oldNbLinesOfCode = n.OlderVersion().NbLinesOfCode.GetValueOrDefault() ,
delta = (int) n.NbLinesOfCode.GetValueOrDefault() - n.OlderVersion().NbLinesOfCode.GetValueOrDefault() }View Code Query or Rule BodyView Code Query or Rule Body
No namespaces matched
![]() | New types |
from t in Application.Types where
!t.ParentNamespace.WasAdded() &&
t.WasAdded()
select new { t, t.NbLinesOfCode }
View Code Query or Rule BodyView Code Query or Rule Body
No types matched
![]() | Types removed |
from t in codeBase.OlderVersion().Application.Types where
!t.ParentNamespace.WasRemoved() &&
t.WasRemoved()
select new { t, t.NbLinesOfCode }
View Code Query or Rule BodyView Code Query or Rule Body
No types matched
![]() | Types where code was changed |
// To visualize changes in code, right-click a matched type and select:
// - Compare older and newer versions of source file
// - Compare older and newer versions disassembled with Reflector
from t in Application.Types where t.CodeWasChanged()
//select new { t, t.NbLinesOfCode }
select new { t, t.NbLinesOfCode,
oldNbLinesOfCode = t.OlderVersion().NbLinesOfCode ,
delta = (int?) t.NbLinesOfCode - t.OlderVersion().NbLinesOfCode }
/*from t in Application.Types where t.CodeWasChanged() && t.IsPresentInBothBuild
select new { t, t.NbLinesOfCode,
oldNbLinesOfCode = t.OlderVersion().NbLinesOfCode ,
delta = (int) t.NbLinesOfCode - t.OlderVersion().NbLinesOfCode }*/View Code Query or Rule BodyView Code Query or Rule Body
No types matched
![]() | Heuristic to find types moved from one namespace or assembly to another |
let typesRemoved = codeBase.OlderVersion().Types.Where(t => t.WasRemoved())
let typesAdded = Types.Where(t => t.WasAdded())
from tMoved in typesAdded.Join(
typesRemoved,
t => t.Name,
t => t.Name,
(tNewer, tOlder) => new { tNewer,
OlderParentNamespace = tOlder.ParentNamespace,
OlderParentAssembly = tOlder.ParentAssembly } )
select tMovedView Code Query or Rule BodyView Code Query or Rule Body
No types matched
![]() | Types directly using one or several types changed |
let typesChanged = Application.Types.Where(t => t.CodeWasChanged()).ToHashSet()
from t in JustMyCode.Types.UsingAny(typesChanged) where
!t.CodeWasChanged() &&
!t.WasAdded()
let typesChangedUsed = t.TypesUsed.Intersect(typesChanged)
select new { t, typesChangedUsed }View Code Query or Rule BodyView Code Query or Rule Body
No types matched
![]() | Types indirectly using one or several types changed |
let typesChanged = Application.Types.Where(t => t.CodeWasChanged()).ToHashSet()
// 'depth' represents a code metric defined on types using
// directly or indirectly any type where code was changed.
let depth = JustMyCode.Types.DepthOfIsUsingAny(typesChanged)
from t in depth.DefinitionDomain where
!t.CodeWasChanged() &&
!t.WasAdded()
let typesChangedDirectlyUsed = t.TypesUsed.Intersect(typesChanged)
let depthOfUsingTypesChanged = depth[t]
orderby depthOfUsingTypesChanged
select new { t, depthOfUsingTypesChanged, typesChangedDirectlyUsed }View Code Query or Rule BodyView Code Query or Rule Body
No types matched
![]() | New methods |
from m in Application.Methods where
!m.ParentType.WasAdded() &&
m.WasAdded()
select new { m, m.NbLinesOfCode }
View Code Query or Rule BodyView Code Query or Rule Body
No methods matched
![]() | Methods removed |
from m in codeBase.OlderVersion().Application.Methods where
!m.ParentType.WasRemoved() &&
m.WasRemoved()
select new { m, m.NbLinesOfCode }
View Code Query or Rule BodyView Code Query or Rule Body
No methods matched
![]() | Methods where code was changed |
// To visualize changes in code, right-click a matched method and select:
// - Compare older and newer versions of source file
// - Compare older and newer versions disassembled with Reflector
from m in Application.Methods where m.CodeWasChanged()
select new { m, m.NbLinesOfCode,
oldNbLinesOfCode = m.OlderVersion().NbLinesOfCode ,
delta = (int?) m.NbLinesOfCode - m.OlderVersion().NbLinesOfCode }View Code Query or Rule BodyView Code Query or Rule Body
No methods matched
![]() | Methods directly calling one or several methods changed |
let methodsChanged = Application.Methods.Where(m => m.CodeWasChanged()).ToHashSet()
from m in JustMyCode.Methods.UsingAny(methodsChanged ) where
!m.CodeWasChanged() &&
!m.WasAdded()
let methodsChangedCalled = m.MethodsCalled.Intersect(methodsChanged)
select new { m, methodsChangedCalled }View Code Query or Rule BodyView Code Query or Rule Body
No methods matched
![]() | Methods indirectly calling one or several methods changed |
let methodsChanged = Application.Methods.Where(m => m.CodeWasChanged()).ToHashSet()
// 'depth' represents a code metric defined on methods using
// directly or indirectly any method where code was changed.
let depth = JustMyCode.Methods.DepthOfIsUsingAny(methodsChanged)
from m in depth.DefinitionDomain where
!m.CodeWasChanged() &&
!m.WasAdded()
let methodsChangedDirectlyUsed = m.MethodsCalled.Intersect(methodsChanged)
let depthOfUsingMethodsChanged = depth[m]
orderby depthOfUsingMethodsChanged
select new { m, depthOfUsingMethodsChanged, methodsChangedDirectlyUsed }View Code Query or Rule BodyView Code Query or Rule Body
No methods matched
![]() | New fields |
from f in Application.Fields where
!f.ParentType.WasAdded() &&
f.WasAdded()
select new { f }
View Code Query or Rule BodyView Code Query or Rule Body
No fields matched
![]() | Fields removed |
from f in codeBase.OlderVersion().Application.Fields where
!f.ParentType.WasRemoved() &&
f.WasRemoved()
select new { f }
View Code Query or Rule BodyView Code Query or Rule Body
No fields matched
![]() | Third party types that were not used and that are now used |
from t in ThirdParty.Types where t.IsUsedRecently()
select new { t, t.Methods, t.Fields, t.TypesUsingMe }
View Code Query or Rule BodyView Code Query or Rule Body
No types matched
![]() | Third party types that were used and that are not used anymore |
from t in codeBase.OlderVersion().Types where t.IsNotUsedAnymore()
select new { t, t.Methods, t.Fields, TypesThatUsedMe = t.TypesUsingMe }
View Code Query or Rule BodyView Code Query or Rule Body
No types matched
![]() | Third party methods that were not used and that are now used |
from m in ThirdParty.Methods where
m.IsUsedRecently() &&
!m.ParentType.IsUsedRecently()
select new { m, m.MethodsCallingMe }View Code Query or Rule BodyView Code Query or Rule Body
No methods matched
![]() | Third party methods that were used and that are not used anymore |
from m in codeBase.OlderVersion().Methods where
m.IsNotUsedAnymore() &&
!m.ParentType.IsNotUsedAnymore()
select new { m, MethodsThatCalledMe = m.MethodsCallingMe}View Code Query or Rule BodyView Code Query or Rule Body
No methods matched
![]() | Third party fields that were not used and that are now used |
from f in ThirdParty.Fields where
f.IsUsedRecently() &&
!f.ParentType.IsUsedRecently()
select new { f, f.MethodsUsingMe }View Code Query or Rule BodyView Code Query or Rule Body
No fields matched
![]() | Third party fields that were used and that are not used anymore |
from f in codeBase.OlderVersion().Fields where
f.IsNotUsedAnymore() &&
!f.ParentType.IsNotUsedAnymore()
select new { f, MethodsThatUsedMe = f.MethodsUsingMe }View Code Query or Rule BodyView Code Query or Rule Body
No fields matched
Test and Code Coverage
|
![]() | C.R.A.P method code metric |
// Change Risk Analyzer and Predictor (i.e. CRAP) code metric
// This code metric helps in pinpointing overly complex and untested code.
// Reference: http://www.artima.com/weblogs/viewpost.jsp?thread=215899
// Formula: CRAP(m) = comp(m)^2 * (1 – cov(m)/100)^3 + comp(m)
warnif count > 0
from m in JustMyCode.Methods
// Don't match too short methods
where m.NbLinesOfCode > 10
let CC = m.CyclomaticComplexity
let uncov = (100 - m.PercentageCoverage) / 100f
let CRAP = (CC * CC * uncov * uncov * uncov) + CC
where CRAP != null && CRAP > 30
orderby CRAP descending, m.NbLinesOfCode descending
select new { m, CRAP, CC, uncoveredPercentage = uncov*100, m.NbLinesOfCode }View Code Query or Rule BodyView Code Query or Rule Body
No methods matched
![]() | Complex methods partially covered by tests should be 100% covered |
warnif count > 0 from m in JustMyCode.Methods
where
// These metrics' definitions are available here:
// http://www.ndepend.com/Metrics.aspx#MetricsOnMethods
( m.NbLinesOfCode > 30 ||
m.ILCyclomaticComplexity > 50 ||
m.ILNestingDepth > 4 ||
m.NbVariables > 8) &&
// Take care only of complex methods
// already partially covered, but not completely covered.
m.PercentageCoverage > 0 &&
m.PercentageCoverage < 100
orderby m.NbLinesOfCodeNotCovered ascending,
m.NbLinesOfCode descending
select new { m, m.PercentageCoverage, m.NbLinesOfCode,
m.NbLinesOfCodeCovered, m.NbLinesOfCodeNotCovered,
m.ILCyclomaticComplexity, m.ILNestingDepth, m.NbVariables } View Code Query or Rule BodyView Code Query or Rule Body
No methods matched
![]() | Method changed poorly covered |
from m in Application.Methods where
m.PercentageCoverage < 30 &&
m.CodeWasChanged()
orderby m.NbLinesOfCode descending,
m.NbLinesOfCodeNotCovered ,
m.PercentageCoverage
select new { m, m.PercentageCoverage, m.NbLinesOfCode,
m.NbLinesOfCodeNotCovered }
View Code Query or Rule BodyView Code Query or Rule Body
No methods matched
![]() | Method added poorly covered |
from m in Application.Methods where
m.NbLinesOfCode > 0 &&
m.PercentageCoverage < 30 &&
m.WasAdded()
orderby m.NbLinesOfCode descending,
m.NbLinesOfCodeNotCovered ,
m.PercentageCoverage
select new { m, m.PercentageCoverage, m.NbLinesOfCode,
m.NbLinesOfCodeNotCovered }
View Code Query or Rule BodyView Code Query or Rule Body
No methods matched
![]() | Types 95% to 99% covered |
from t in Application.Types where
t.PercentageCoverage >= 95 &&
t.PercentageCoverage <= 99 &&
!t.IsGeneratedByCompiler
let methodsCulprit = t.Methods.Where(m => m.PercentageCoverage < 100)
orderby t.NbLinesOfCode descending ,
t.NbLinesOfCodeNotCovered ,
t.PercentageCoverage
select new { t, t.PercentageCoverage, t.NbLinesOfCode,
t.NbLinesOfCodeNotCovered, methodsCulprit }
// Having types 100% covered by tests is a good idea because
// the small portion of code hard to cover, is also the
// portion of code that is the most likely to contain bugs.
View Code Query or Rule BodyView Code Query or Rule Body
No types matched
![]() | Namespaces 95% to 99% covered |
from n in Application.Namespaces where
n.PercentageCoverage >= 95 &&
n.PercentageCoverage <= 99
let methodsCulprit = n.ChildMethods.Where(m => m.PercentageCoverage < 100)
orderby n.NbLinesOfCode descending ,
n.NbLinesOfCodeNotCovered ,
n.PercentageCoverage
select new { n, n.PercentageCoverage, n.NbLinesOfCode,
n.NbLinesOfCodeNotCovered, methodsCulprit }
// Having types 100% covered by tests is a good idea because
// the small portion of code hard to cover, is also the
// portion of code that is the most likely to contain bugs.View Code Query or Rule BodyView Code Query or Rule Body
No namespaces matched
![]() | Types tagged with FullCoveredAttribute should be 100% covered |
warnif count > 0
from t in Application.Types where
t.HasAttribute ("NDepend.Attributes.FullCoveredAttribute".AllowNoMatch()) &&
t.PercentageCoverage < 100
let notFullCoveredMethods = t.Methods.Where(
m => m.NbLinesOfCode> 0 &&
m.PercentageCoverage < 100 &&
!m.HasAttribute("NDepend.Attributes.UncoverableByTestAttribute".AllowNoMatch()))
orderby t.NbLinesOfCodeNotCovered descending
select new { t, t.PercentageCoverage, t.NbLinesOfCodeNotCovered, notFullCoveredMethods,
t.NbLinesOfCode, t.NbLinesOfCodeCovered }
// By using a FullCoveredAttribute, you can signify to developers
// that a class is, and must remain in the future, 100% covered by tests.
// If you don't want to link NDepend.API.dll,
// you can use your own attribute and adapt this rule.
// Having types 100% covered by tests is a good idea because
// the small portion of code hard to cover, is also the
// portion of code that is the most likely to contain bugs.
View Code Query or Rule BodyView Code Query or Rule Body
No types matched
![]() | Types 100% covered should be tagged with FullCoveredAttribute |
warnif count > 0 from t in JustMyCode.Types where
!t.HasAttribute ("NDepend.Attributes.FullCoveredAttribute".AllowNoMatch()) &&
t.PercentageCoverage == 100 &&
!t.IsGeneratedByCompiler
select new { t, t.NbLinesOfCode }
// By using a FullCoveredAttribute, you can signify to developers
// that a class is, and must remain in the future, 100% covered by tests.
// If you don't want to link NDepend.API.dll, you can use your own attribute and adapt this rule.
// Having types 100% covered by tests is a good idea because
// the small portion of code hard to cover, is also the
// portion of code that is the most likely to contain bugs.
View Code Query or Rule BodyView Code Query or Rule Body
No types matched
![]() | Types not covered at all |
from t in Application.Types where
t.PercentageCoverage == 0
orderby t.NbLinesOfCode descending
select new { t, t.NbLinesOfCode }
View Code Query or Rule BodyView Code Query or Rule Body
No types matched
![]() | Namespaces not covered at all |
from n in Application.Namespaces where
n.PercentageCoverage == 0
orderby n.NbLinesOfCode descending
select new { n, n.NbLinesOfCode}
View Code Query or Rule BodyView Code Query or Rule Body
No namespaces matched
![]() | Test Methods |
// We advise to not include test assemblies in code analyzed by NDepend.
// But if you wish the current query to run properly,
// you'll need to consider test assemblies in your list of application assemblies analyzed by NDepend..
let testAttr = ThirdParty.Types.WithNameIn("TestAttribute", "TestCaseAttribute")
let testMethods = Methods.TaggedWithAnyAttributes(testAttr)
from m in testMethods
select m
View Code Query or Rule BodyView Code Query or Rule Body
No methods matched
![]() | Methods directly called by test Methods |
// Lists all methods directly called by tests methods.
// Overrides of virtual and absract methods, called through polymorphism, are not listed.
// Methods solely invoked through a delegate are not listed.
// Methods solely invoked through reflection are not listed.
// We advise to not include test assemblies in code analyzed by NDepend.
// But if you wish the current query to run properly,
// you'll need to consider test assemblies in your list of application assemblies analyzed by NDepend..
let testAttr = ThirdParty.Types.WithNameIn("TestAttribute", "TestCaseAttribute")
let testMethods = Methods.TaggedWithAnyAttributes(testAttr).ToHashSet()
// --- Uncomment this line if your test methods are in dedicated test assemblies ---
//let testAssemblies = testMethods.ParentAssemblies().ToHashSet()
from m in Application.Methods.UsedByAny(testMethods)
// --- Uncomment this line if your test methods are in dedicated test assemblies ---
//where !testAssemblies.Contains(m.ParentAssembly)
select new { m ,
calledByTests = m.MethodsCallingMe.Intersect(testMethods ),
// --- Uncomment this line if your project import some coverage data ---
// m.PercentageCoverage
}View Code Query or Rule BodyView Code Query or Rule Body
No methods matched
![]() | Methods directly and indirectly called by test Methods |
// Lists all methods called directly or indirectly by tests methods.
// Overrides of virtual and absract methods, called through polymorphism, are not listed.
// Methods solely invoked through a delegate are not listed.
// Methods solely invoked through reflection are not listed.
// We advise to not include test assemblies in code analyzed by NDepend.
// But if you wish the current query to run properly,
// you'll need to consider test assemblies in your list of application assemblies analyzed by NDepend.
let testAttr = from t in ThirdParty.Types.WithNameIn("TestAttribute", "TestCaseAttribute") select t
let testMethods = Methods.TaggedWithAnyAttributes(testAttr)
// --- Uncomment this line if your test methods are in dedicated test assemblies ---
// let testAssemblies = testMethods.ParentAssemblies().ToHashSet()
let depthOfCalledByTest = Application.Methods.DepthOfIsUsedByAny(testMethods)
from pair in depthOfCalledByTest
where pair.Value > 0
orderby pair.Value ascending
// --- Uncomment this line if your test methods are in dedicated test assemblies ---
//&& !testAssemblies.Contains(pair.CodeElement.ParentAssembly)
select new {
method = pair.CodeElement,
// (depthOfCalledByTests == 1) means that the method is directly called by tests
// (depthOfCalledByTests == 2) means that the method is directly called by a method directly called by tests
// ...
depthOfCalledByTests = pair.Value,
// --- Uncomment this line if your project import some coverage data ---
// m.PercentageCoverage
}View Code Query or Rule BodyView Code Query or Rule Body
No methods matched
Dead Code
|
![]() | Critical Rule warning: Potentially dead Fields |
warnif count > 0
from f in JustMyCode.Fields where
f.NbMethodsUsingMe == 0 &&
!f.IsPublic && // Although not recommended, public fields might be used by client applications of your assemblies.
!f.IsLiteral && // The IL code never explicitely uses literal fields.
!f.IsEnumValue && // The IL code never explicitely uses enumeration value.
f.Name != "value__" && // Field named 'value__' are relative to enumerations and the IL code never explicitely uses them.
!f.HasAttribute("NDepend.Attributes.IsNotDeadCodeAttribute".AllowNoMatch()) &&
!f.IsGeneratedByCompiler
// If you don't want to link NDepend.API.dll, you can use your own IsNotDeadCodeAttribute and adapt this rule.
select fView Code Query or Rule BodyView Code Query or Rule Body
31 fields matched
fields | Full Name |
---|---|
_modelDirectory | System.Data.Entity.Objects .TransactionsTests._modelDirectory |
_workspace | System.Data.Entity.Objects .TransactionsTests._workspace |
_previousConnectionFactory | ProductivityApiTests .SimpleScenariosForSqlCe35 ._previousConnectionFactory |
_previousConnectionFactory | ProductivityApiTests .DbContextTestsForSqlCe ._previousConnectionFactory |
_someInt | ProductivityApiTests .LinqTests+ClassWithContextFieldAndOther Fields._someInt |
_someString | ProductivityApiTests .LinqTests+ClassWithContextFieldAndOther Fields._someString |
_context1 | ProductivityApiTests .LinqTests+ClassWithContextFieldAndOther Fields._context1 |
_context3 | ProductivityApiTests .LinqTests+ClassWithContextFieldAndOther Fields._context3 |
_someIntStatic | ProductivityApiTests .LinqTests+ClassWithContextFieldAndOther Fields._someIntStatic |
_someStringStatic | ProductivityApiTests .LinqTests+ClassWithContextFieldAndOther Fields._someStringStatic |
_context1Static | ProductivityApiTests .LinqTests+ClassWithContextFieldAndOther Fields._context1Static |
_previousConnectionFactory | ProductivityApiTests .SimpleScenariosForSqlCe ._previousConnectionFactory |
_a | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+Bell ._a |
B | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+Bell.B |
C | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+Bell.C |
_e | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+Bell ._e |
F | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+Bell.F |
G | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+Bell.G |
_a | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+String er._a |
B | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+String er.B |
C | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+String er.C |
_e | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+String er._e |
F | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+String er.F |
G | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+String er.G |
_j | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+String er._j |
K | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+String er.K |
L | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+String er.L |
_n | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+String er._n |
O | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+String er.O |
P | System.Data.Entity.Utilities .TypeExtensionsTests+GetFieldsEtc+String er.P |
Instance | System.Data.Entity.Infrastructure .DependencyResolution .ProviderServicesFactoryTests+FakeProvid erWithNullInstance.Instance |
Statistics
Stat |
---|
Sum: |
Average: |
Minimum: |
Maximum: |
Standard deviation: |
Variance: |
![]() | Wrong usage of IsNotDeadCodeAttribute |
// This IsNotDeadCodeAttribute can be used to signify that
// despite a member could be removed without provoking any syntax error
// (we also say it is dead code), your intention is to not remove this member.
// Default 'Dead Code' code rules take account of this attribute.
// IsNotDeadCodeAttribute is defined in NDepend.API.dll
// If you don't want to link NDepend.API.dll, you can use
// your own IsNotDeadCodeAttribute and adapt this rule.
warnif count == 1
let tAttr = Types.WithFullName("NDepend.Attributes.IsNotDeadCodeAttribute").FirstOrDefault()
where tAttr != null
// Get types that do a wrong usage of IsNotDeadCodeAttribute
let types = from t in Application.Types where
t.HasAttribute("NDepend.Attributes.IsNotDeadCodeAttribute".AllowNoMatch()) &&
( // types used don't need to be tagged with IsNotDeadCodeAttribute!
t.NbTypesUsingMe > 0 ||
// Static types that define only const fields cannot be seen as used in IL code.
// They don't need to be tagged with IsNotDeadCodeAttribute.
(t.IsStatic && t.NbMethods == 0 && !t.Fields.Where(f => !f.IsLiteral).Any())
)
select t
// Get methods that do a wrong usage of IsNotDeadCodeAttribute
let methods = from m in Application.Methods where
m.HasAttribute("NDepend.Attributes.IsNotDeadCodeAttribute".AllowNoMatch()) &&
m.NbMethodsCallingMe > 0
select m
// Get fields that do a wrong usage of IsNotDeadCodeAttribute
let fields = from f in Application.Fields where
f.HasAttribute("NDepend.Attributes.IsNotDeadCodeAttribute".AllowNoMatch()) &&
f.NbMethodsUsingMe > 0
select f
where types.Count() > 0 || methods.Count() > 0 || fields.Count() > 0
select new { tAttr, types , methods, fields }View Code Query or Rule BodyView Code Query or Rule Body
No types matched
Trend Charts
Lines of Code
Rules Violated
Rules Violations
Percentage Coverage by Tests

Max
Average
Third-Party Usage
Assemblies Dependencies
Assembly | Depends on | Is referenced by |
---|---|---|
EntityFramework.FunctionalTests .Transitional v0.0.0.0 | mscorlib v4.0.0.0 ; EntityFramework v6.0.0.0 ; EntityFramework.SqlServer v6.0.0.0 ; System.Data v4.0.0.0 ; xunit v1.9.2.1705 ; System v4.0.0.0 ; System.Core v4.0.0.0 ; System.Transactions v4.0.0.0 ; System.Configuration v4.0.0.0 ; PresentationCore v4.0.0.0 ; System.Xml.Linq v4.0.0.0 ; System.Runtime.Serialization v4.0.0.0 ; System.ComponentModel.DataAnnotations v4.0.0.0 ; System.Data.Services v4.0.0.0 ; System.Data.Services.Client v4.0.0.0 ; System.Xml v4.0.0.0 ; System.Data.SqlServerCe v4.0.0.0 ; Microsoft.CSharp v4.0.0.0 ; EntityFramework.SqlServerCompact v6.0.0.0 ; EntityFramework.SqlServerCompact.Legacy v6.0.0.0 ; | EntityFramework.FunctionalTests .ProviderAgnostic v1.0.0.0 ; EntityFramework.VBTests v0.0.0.0 ; EntityFramework.FunctionalTests v0.0.0.0 ; EntityFramework.UnitTests v0.0.0.0 ; |
EntityFramework.FunctionalTests .ProviderAgnostic v1.0.0.0 | mscorlib v4.0.0.0 ; EntityFramework v6.0.0.0 ; System.Core v4.0.0.0 ; EntityFramework.FunctionalTests .Transitional v0.0.0.0 ; System.Data v4.0.0.0 ; System v4.0.0.0 ; xunit v1.9.2.1705 ; System.ComponentModel.DataAnnotations v4.0.0.0 ; System.Transactions v4.0.0.0 ; System.Xml v4.0.0.0 ; MySql.Data v6.7.2.0 ; System.Configuration v4.0.0.0 ; EntityFramework.SqlServer v6.0.0.0 ; | - |
EntityFramework.FunctionalTests v0.0.0.0 | mscorlib v4.0.0.0 ; EntityFramework.FunctionalTests .Transitional v0.0.0.0 ; EntityFramework v6.0.0.0 ; xunit v1.9.2.1705 ; System.Core v4.0.0.0 ; System.Data v4.0.0.0 ; EntityFramework.SqlServer v6.0.0.0 ; System.ComponentModel.DataAnnotations v4.0.0.0 ; Moq v4.0.10827.0 ; System.Xml v4.0.0.0 ; System.Xml.Linq v4.0.0.0 ; System v4.0.0.0 ; System.Runtime.Serialization v4.0.0.0 ; System.Configuration v4.0.0.0 ; xunit.extensions v1.9.2.1705 ; System.Data.SqlServerCe v4.0.0.0 ; EntityFramework.SqlServerCompact v6.0.0.0 ; System.Transactions v4.0.0.0 ; WindowsBase v4.0.0.0 ; Microsoft.CSharp v4.0.0.0 ; | EntityFramework.VBTests v0.0.0.0 ; EntityFramework.UnitTests v0.0.0.0 ; |
EntityFramework.VBTests v0.0.0.0 | mscorlib v4.0.0.0 ; Microsoft.VisualBasic v10.0.0.0 ; System.Xml.Linq v4.0.0.0 ; EntityFramework.FunctionalTests .Transitional v0.0.0.0 ; EntityFramework v6.0.0.0 ; System v4.0.0.0 ; System.Core v4.0.0.0 ; EntityFramework.FunctionalTests v0.0.0.0 ; System.Transactions v4.0.0.0 ; xunit v1.9.2.1705 ; xunit.extensions v1.9.2.1705 ; | - |
EntityFramework.UnitTests v0.0.0.0 | EntityFramework.FunctionalTests .Transitional v0.0.0.0 ; mscorlib v4.0.0.0 ; migrate v6.0.0.0 ; EntityFramework v6.0.0.0 ; xunit v1.9.2.1705 ; System.Data v4.0.0.0 ; EntityFramework.PowerShell v6.0.0.0 ; EntityFramework.FunctionalTests v0.0.0.0 ; System.Core v4.0.0.0 ; Moq v4.0.10827.0 ; System.ComponentModel.DataAnnotations v4.0.0.0 ; System.Xml.Linq v4.0.0.0 ; System.ServiceProcess v4.0.0.0 ; System.Xml v4.0.0.0 ; System v4.0.0.0 ; System.Configuration v4.0.0.0 ; EntityFramework.PowerShell.Utility v6.0.0.0 ; EntityFramework.SqlServer v6.0.0.0 ; EntityFramework.SqlServerCompact v6.0.0.0 ; Microsoft.VisualBasic v10.0.0.0 ; System.Runtime.Serialization v4.0.0.0 ; System.Transactions v4.0.0.0 ; Microsoft.CSharp v4.0.0.0 ; System.Data.SqlServerCe v4.0.0.0 ; System.Windows.Forms v4.0.0.0 ; | - |
Assemblies Build Order
- EntityFramework.FunctionalTests.Transitional
- EntityFramework.FunctionalTests.ProviderAgnostic
- EntityFramework.FunctionalTests
- EntityFramework.VBTests
- EntityFramework.UnitTests
Assemblies Build Order
- EntityFramework.FunctionalTests.Transitional
- EntityFramework.FunctionalTests.ProviderAgnostic
- EntityFramework.FunctionalTests
- EntityFramework.VBTests
- EntityFramework.UnitTests
Analysis Log : Information and Warnings
The Warnings can reveal potential flaws concerning the health of the build process.
A particular warn can be disabled through the NDepend interactive UI, panel Error List, tick the checkbox Disabled corresponding to the warn to disable.
Message | |
---|---|
![]() | Begin full analysis with NDepend v5.2.1.8320 |
![]() | No Baseline for Comparison loaded. |
![]() | Can't load the assembly {EnvDTE}: Can't find the .NET assembly {EnvDTE} in specified folders. Has it been compiled properly? Is the NDepend project missing the containing folder of the .NET assembly? |
![]() | Can't load the assembly {VSLangProj}: Can't find the .NET assembly {VSLangProj} in specified folders. Has it been compiled properly? Is the NDepend project missing the containing folder of the .NET assembly? |
![]() | Concurrent mode |
![]() | Assembly {migrate} doesn't contain any type. |
![]() | Assembly {EntityFramework.PowerShell} doesn't contain any type. |
![]() | .NET Assemblies loaded from {\\psf\Home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\UnitTests\bin\Debug} EntityFramework.FunctionalTests.dll v0.0.0.0 EntityFramework.FunctionalTests.Transitional.dll v0.0.0.0 EntityFramework.UnitTests.dll v0.0.0.0 migrate.exe v6.0.0.0 EntityFramework.dll v6.0.0.0 xunit.dll v1.9.2.1705 EntityFramework.PowerShell.dll v6.0.0.0 Moq.dll v4.0.10827.0 EntityFramework.PowerShell.Utility.dll v6.0.0.0 EntityFramework.SqlServer.dll v6.0.0.0 EntityFramework.SqlServerCompact.dll v6.0.0.0 System.Data.SqlServerCe.dll v4.0.0.0 xunit.extensions.dll v1.9.2.1705 EntityFramework.SqlServerCompact.Legacy.dll v6.0.0.0 |
![]() | .NET Assembly loaded from {\\psf\Home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\VBTests\bin\Debug} EntityFramework.VBTests.dll v0.0.0.0 |
![]() | .NET Assemblies loaded from {\\psf\Home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.ProviderAgnostic\bin\Debug} EntityFramework.FunctionalTests.ProviderAgnostic.dll v1.0.0.0 MySql.Data.dll v6.7.2.0 |
![]() | .NET Assemblies loaded from {C:\Windows\Microsoft.NET\Framework\v4.0.30319} mscorlib.dll v4.0.0.0 System.Data.dll v4.0.0.0 System.Core.dll v4.0.0.0 System.ComponentModel.DataAnnotations.dll v4.0.0.0 System.Xml.Linq.dll v4.0.0.0 System.ServiceProcess.dll v4.0.0.0 System.Xml.dll v4.0.0.0 System.dll v4.0.0.0 System.Configuration.dll v4.0.0.0 Microsoft.VisualBasic.dll v10.0.0.0 System.Runtime.Serialization.dll v4.0.0.0 System.Transactions.dll v4.0.0.0 Microsoft.CSharp.dll v4.0.0.0 System.Windows.Forms.dll v4.0.0.0 System.Data.Services.dll v4.0.0.0 System.Data.Services.Client.dll v4.0.0.0 |
![]() | .NET Assemblies loaded from {C:\Windows\Microsoft.NET\Framework\v4.0.30319\WPF} WindowsBase.dll v4.0.0.0 PresentationCore.dll v4.0.0.0 |
![]() | Assembly {EnvDTE} is referenced by {EntityFramework.UnitTests} but is not found. |
![]() | Assembly {VSLangProj} is referenced by {EntityFramework.UnitTests} but is not found. |
![]() | 1269 source files parsed ; 1 source file not found ; all source files in-sync with PDB |
![]() | 0 code rule has been extracted from code. |
![]() | No dependency cycle detected in assemblies referencement graph. |
![]() | The source file {\\psf\home\Desktop\projects\entityframework-5c6c05bd4caa091031d159744401a98a98a88d3f\test\EntityFramework\FunctionalTests.Transitional\TestModels\StoreModel\FixupCollection%27.cs} referenced by the PDB file of the assembly {EntityFramework.FunctionalTests.Transitional} does not exist. |
![]() | 07/25/2014 20:25:44 Analyse dependencies of your application. |
![]() | 07/25/2014 20:27:11 Log trend metrics values. |
![]() | 07/25/2014 20:27:41 Execute queries and rules |
![]() | 8 critical rules are violated. - Types too big - critical - Methods with too many parameters - critical - Avoid namespaces mutually dependent - Potentially dead Fields - Constructors of abstract classes should be declared as protected or private - Don't assign a field from many methods - Interface name should begin with a 'I' - Avoid having different types with same name |
![]() | 07/25/2014 20:28:26 NDepend analysis done. Duration: 03:24 |
![]() | 07/25/2014 20:28:26 Building the report (standard). |