Skip to content
Open
Show file tree
Hide file tree
Changes from all 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