feat(core): register IContentCrudService in DI container

Adds IContentCrudService registration to UmbracoBuilder alongside
IContentService. Both services are now resolvable from DI.

Includes integration test verifying successful resolution.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
2025-12-21 02:52:34 +00:00
parent 0351dc06b4
commit 9962df50ee
58 changed files with 19735 additions and 463 deletions

View File

@@ -0,0 +1,12 @@
Method,Job,AnalyzeLaunchVariance,EvaluateOverhead,MaxAbsoluteError,MaxRelativeError,MinInvokeCount,MinIterationTime,OutlierMode,Affinity,EnvironmentVariables,Jit,LargeAddressAware,Platform,PowerPlanMode,Runtime,AllowVeryLargeObjects,Concurrent,CpuGroups,Force,HeapAffinitizeMask,HeapCount,NoAffinitize,RetainVm,Server,Arguments,BuildConfiguration,Clock,EngineFactory,NuGetReferences,Toolchain,IsMutator,InvocationCount,IterationCount,IterationTime,LaunchCount,MaxIterationCount,MaxWarmupIterationCount,MemoryRandomization,MinIterationCount,MinWarmupIterationCount,RunStrategy,UnrollFactor,WarmupCount,Mean,Error,StdDev,Median,Gen0,Allocated
Linq,ShortRun,False,Default,Default,Default,Default,Default,Default,1111111111111111,Empty,RyuJit,Default,X64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 10.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,3,Default,1,Default,Default,Default,Default,Default,Default,16,3,"51,195.5380 ns","1,617.4345 ns",88.6570 ns,"51,163.7063 ns",3.4180,59712 B
SplitToHeapStrings,ShortRun,False,Default,Default,Default,Default,Default,Default,1111111111111111,Empty,RyuJit,Default,X64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 10.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,3,Default,1,Default,Default,Default,Default,Default,Default,16,3,"37,354.8894 ns","9,999.4406 ns",548.1031 ns,"37,333.8901 ns",2.5635,44592 B
SplitToStackSpansWithoutEmptyCheckReversingListAsSpan,ShortRun,False,Default,Default,Default,Default,Default,Default,1111111111111111,Empty,RyuJit,Default,X64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 10.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,3,Default,1,Default,Default,Default,Default,Default,Default,16,3,"25,784.9531 ns","1,949.3238 ns",106.8490 ns,"25,818.4337 ns",0.9766,17128 B
SplitToStackSpansWithoutEmptyCheck,ShortRun,False,Default,Default,Default,Default,Default,Default,1111111111111111,Empty,RyuJit,Default,X64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 10.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,3,Default,1,Default,Default,Default,Default,Default,Default,16,3,"26,441.8317 ns","4,054.8077 ns",222.2577 ns,"26,557.4375 ns",0.9766,17128 B
SplitToStackSpansWithEmptyCheck,ShortRun,False,Default,Default,Default,Default,Default,Default,1111111111111111,Empty,RyuJit,Default,X64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 10.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,3,Default,1,Default,Default,Default,Default,Default,Default,16,3,"25,821.9195 ns","4,840.3751 ns",265.3173 ns,"25,718.1962 ns",0.9766,17128 B
StripWhitespace_Benchmark,ShortRun,False,Default,Default,Default,Default,Default,Default,1111111111111111,Empty,RyuJit,Default,X64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 10.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,3,Default,1,Default,Default,Default,Default,Default,Default,16,3,269.2084 ns,46.5960 ns,2.5541 ns,267.8466 ns,0.0033,64 B
GetFileExtension_Benchmark,ShortRun,False,Default,Default,Default,Default,Default,Default,1111111111111111,Empty,RyuJit,Default,X64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 10.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,3,Default,1,Default,Default,Default,Default,Default,Default,16,3,308.9820 ns,100.8086 ns,5.5257 ns,309.7014 ns,0.0319,552 B
StripHtml_Benchmark,ShortRun,False,Default,Default,Default,Default,Default,Default,1111111111111111,Empty,RyuJit,Default,X64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 10.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,3,Default,1,Default,Default,Default,Default,Default,Default,16,3,719.6788 ns,182.4947 ns,10.0031 ns,718.6075 ns,0.0019,48 B
IsLowerCase_Benchmark,ShortRun,False,Default,Default,Default,Default,Default,Default,1111111111111111,Empty,RyuJit,Default,X64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 10.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,3,Default,1,Default,Default,Default,Default,Default,Default,16,3,0.0194 ns,0.2102 ns,0.0115 ns,0.0218 ns,0.0000,0 B
IsUpperCase_Benchmark,ShortRun,False,Default,Default,Default,Default,Default,Default,1111111111111111,Empty,RyuJit,Default,X64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 10.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,3,Default,1,Default,Default,Default,Default,Default,Default,16,3,0.0078 ns,0.2461 ns,0.0135 ns,0.0000 ns,0.0000,0 B
ReplaceNonAlphanumericChars_String_Benchmark,ShortRun,False,Default,Default,Default,Default,Default,Default,1111111111111111,Empty,RyuJit,Default,X64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 10.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,3,Default,1,Default,Default,Default,Default,Default,Default,16,3,84.6292 ns,48.9647 ns,2.6839 ns,84.3141 ns,0.0097,168 B
1 Method Job AnalyzeLaunchVariance EvaluateOverhead MaxAbsoluteError MaxRelativeError MinInvokeCount MinIterationTime OutlierMode Affinity EnvironmentVariables Jit LargeAddressAware Platform PowerPlanMode Runtime AllowVeryLargeObjects Concurrent CpuGroups Force HeapAffinitizeMask HeapCount NoAffinitize RetainVm Server Arguments BuildConfiguration Clock EngineFactory NuGetReferences Toolchain IsMutator InvocationCount IterationCount IterationTime LaunchCount MaxIterationCount MaxWarmupIterationCount MemoryRandomization MinIterationCount MinWarmupIterationCount RunStrategy UnrollFactor WarmupCount Mean Error StdDev Median Gen0 Allocated
2 Linq ShortRun False Default Default Default Default Default Default 1111111111111111 Empty RyuJit Default X64 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c .NET 10.0 False True False True Default Default False False False Default Default Default Default Default Default Default Default 3 Default 1 Default Default Default Default Default Default 16 3 51,195.5380 ns 1,617.4345 ns 88.6570 ns 51,163.7063 ns 3.4180 59712 B
3 SplitToHeapStrings ShortRun False Default Default Default Default Default Default 1111111111111111 Empty RyuJit Default X64 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c .NET 10.0 False True False True Default Default False False False Default Default Default Default Default Default Default Default 3 Default 1 Default Default Default Default Default Default 16 3 37,354.8894 ns 9,999.4406 ns 548.1031 ns 37,333.8901 ns 2.5635 44592 B
4 SplitToStackSpansWithoutEmptyCheckReversingListAsSpan ShortRun False Default Default Default Default Default Default 1111111111111111 Empty RyuJit Default X64 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c .NET 10.0 False True False True Default Default False False False Default Default Default Default Default Default Default Default 3 Default 1 Default Default Default Default Default Default 16 3 25,784.9531 ns 1,949.3238 ns 106.8490 ns 25,818.4337 ns 0.9766 17128 B
5 SplitToStackSpansWithoutEmptyCheck ShortRun False Default Default Default Default Default Default 1111111111111111 Empty RyuJit Default X64 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c .NET 10.0 False True False True Default Default False False False Default Default Default Default Default Default Default Default 3 Default 1 Default Default Default Default Default Default 16 3 26,441.8317 ns 4,054.8077 ns 222.2577 ns 26,557.4375 ns 0.9766 17128 B
6 SplitToStackSpansWithEmptyCheck ShortRun False Default Default Default Default Default Default 1111111111111111 Empty RyuJit Default X64 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c .NET 10.0 False True False True Default Default False False False Default Default Default Default Default Default Default Default 3 Default 1 Default Default Default Default Default Default 16 3 25,821.9195 ns 4,840.3751 ns 265.3173 ns 25,718.1962 ns 0.9766 17128 B
7 StripWhitespace_Benchmark ShortRun False Default Default Default Default Default Default 1111111111111111 Empty RyuJit Default X64 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c .NET 10.0 False True False True Default Default False False False Default Default Default Default Default Default Default Default 3 Default 1 Default Default Default Default Default Default 16 3 269.2084 ns 46.5960 ns 2.5541 ns 267.8466 ns 0.0033 64 B
8 GetFileExtension_Benchmark ShortRun False Default Default Default Default Default Default 1111111111111111 Empty RyuJit Default X64 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c .NET 10.0 False True False True Default Default False False False Default Default Default Default Default Default Default Default 3 Default 1 Default Default Default Default Default Default 16 3 308.9820 ns 100.8086 ns 5.5257 ns 309.7014 ns 0.0319 552 B
9 StripHtml_Benchmark ShortRun False Default Default Default Default Default Default 1111111111111111 Empty RyuJit Default X64 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c .NET 10.0 False True False True Default Default False False False Default Default Default Default Default Default Default Default 3 Default 1 Default Default Default Default Default Default 16 3 719.6788 ns 182.4947 ns 10.0031 ns 718.6075 ns 0.0019 48 B
10 IsLowerCase_Benchmark ShortRun False Default Default Default Default Default Default 1111111111111111 Empty RyuJit Default X64 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c .NET 10.0 False True False True Default Default False False False Default Default Default Default Default Default Default Default 3 Default 1 Default Default Default Default Default Default 16 3 0.0194 ns 0.2102 ns 0.0115 ns 0.0218 ns 0.0000 0 B
11 IsUpperCase_Benchmark ShortRun False Default Default Default Default Default Default 1111111111111111 Empty RyuJit Default X64 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c .NET 10.0 False True False True Default Default False False False Default Default Default Default Default Default Default Default 3 Default 1 Default Default Default Default Default Default 16 3 0.0078 ns 0.2461 ns 0.0135 ns 0.0000 ns 0.0000 0 B
12 ReplaceNonAlphanumericChars_String_Benchmark ShortRun False Default Default Default Default Default Default 1111111111111111 Empty RyuJit Default X64 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c .NET 10.0 False True False True Default Default False False False Default Default Default Default Default Default Default Default 3 Default 1 Default Default Default Default Default Default 16 3 84.6292 ns 48.9647 ns 2.6839 ns 84.3141 ns 0.0097 168 B