Skip to content
Open
Show file tree
Hide file tree
Changes from 3 commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 4 additions & 5 deletions Source/Csla.Benchmarks/Csla.Benchmarks.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -2,15 +2,14 @@

<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFrameworks>net462;net472;net48;net8.0;net9.0</TargetFrameworks>
<TargetFrameworks>net462;net472;net48;net8.0;net9.0;net10.0</TargetFrameworks>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
</PropertyGroup>

<ItemGroup>
<PackageReference Include="BenchmarkDotNet" Version="0.15.2" />
<PackageReference Include="Csla" Version="10.0.0-alpha-0001-g9fc8b77197" />
<PackageReference Include="Csla.Generator.AutoImplementProperties.CSharp" Version="10.0.0-alpha-0001-g9fc8b77197" />
<PackageReference Include="BenchmarkDotNet" Version="0.15.8" />
<PackageReference Include="Csla" Version="10.1.0" />
<PackageReference Include="Csla.Generator.AutoImplementProperties.CSharp" Version="10.1.0" OutputItemType="Analyzer" ReferenceOutputAssembly="false" />
</ItemGroup>

</Project>
18 changes: 18 additions & 0 deletions Source/Csla.Benchmarks/PerformanceCloner/Model/ChildList.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
using Csla;

namespace PropertyPerf.Client.Model;

public class ChildList : BusinessListBase<ChildList, ChildType1>
{
[FetchChild]
private async Task Fetch([Inject] IChildDataPortal<ChildType1> portal)
{
using (LoadListMode)
{
for (int i = 0; i < 10000; i++)
{
Add(await portal.FetchChildAsync(i));
}
}
}
}
55 changes: 55 additions & 0 deletions Source/Csla.Benchmarks/PerformanceCloner/Model/ChildTypes.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
using Csla;

namespace PropertyPerf.Client.Model;

public class ChildType1 : BusinessBase<ChildType1>
{
public static readonly PropertyInfo<int> IdProperty = RegisterProperty<int>(nameof(Id));
public int Id
{
get => GetProperty(IdProperty);
set => SetProperty(IdProperty, value);
}

[FetchChild]
private async Task Fetch(int id)
{
LoadProperty(IdProperty, id);
}
}

public class ChildType2 : BusinessBase<ChildType2>
{
}

public class ChildType3 : BusinessBase<ChildType3>
{
}

public class ChildType4 : BusinessBase<ChildType4>
{
}

public class ChildType5 : BusinessBase<ChildType5>
{
}

public class ChildType11 : BusinessBase<ChildType11>
{
}

public class ChildType12 : BusinessBase<ChildType12>
{
}

public class ChildType13 : BusinessBase<ChildType13>
{
}

public class ChildType14 : BusinessBase<ChildType14>
{
}

public class ChildType15 : BusinessBase<ChildType15>
{
}
Loading
Loading