Skip to content

Commit ae6ea1d

Browse files
committed
Update blob-storage-databus-cleanup-function sample to NServiceBus 10
1 parent 6aa1b15 commit ae6ea1d

File tree

7 files changed

+60
-74
lines changed

7 files changed

+60
-74
lines changed

samples/databus/blob-storage-databus-cleanup-function/ABSDataBus_7/DataBusBlobCleanupFunctions/DataBusBlobCleanupFunctions.csproj

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
<Project Sdk="Microsoft.NET.Sdk">
22

33
<PropertyGroup>
4-
<TargetFrameworks>net9.0;net8.0</TargetFrameworks>
4+
<TargetFramework>net10.0</TargetFramework>
55
<AzureFunctionsVersion>v4</AzureFunctionsVersion>
6-
<LangVersion>12.0</LangVersion>
6+
<LangVersion>preview</LangVersion>
77
<OutputType>Exe</OutputType>
88
<ImplicitUsings>enable</ImplicitUsings>
99
<Nullable>enable</Nullable>
@@ -15,13 +15,13 @@
1515

1616
<ItemGroup>
1717
<PackageReference Include="Microsoft.ApplicationInsights.WorkerService" Version="2.*" />
18-
<PackageReference Include="Microsoft.Azure.Functions.Worker" Version="1.*" />
19-
<PackageReference Include="Microsoft.Azure.Functions.Worker.ApplicationInsights" Version="1.*" />
18+
<PackageReference Include="Microsoft.Azure.Functions.Worker" Version="2.*" />
19+
<PackageReference Include="Microsoft.Azure.Functions.Worker.ApplicationInsights" Version="2.*" />
2020
<PackageReference Include="Microsoft.Azure.Functions.Worker.Extensions.DurableTask" Version="1.*" />
2121
<PackageReference Include="Microsoft.Azure.Functions.Worker.Extensions.Http" Version="3.*" />
22-
<PackageReference Include="Microsoft.Azure.Functions.Worker.Extensions.Http.AspNetCore" Version="1.*" />
22+
<PackageReference Include="Microsoft.Azure.Functions.Worker.Extensions.Http.AspNetCore" Version="2.*" />
2323
<PackageReference Include="Microsoft.Azure.Functions.Worker.Extensions.Storage.Blobs" Version="6.*" />
24-
<PackageReference Include="Microsoft.Azure.Functions.Worker.Sdk" Version="2.0.0" />
24+
<PackageReference Include="Microsoft.Azure.Functions.Worker.Sdk" Version="2.*" />
2525
</ItemGroup>
2626

2727
<ItemGroup>

samples/databus/blob-storage-databus-cleanup-function/ABSDataBus_7/SenderAndReceiver/InputLoopService.cs

Lines changed: 0 additions & 48 deletions
This file was deleted.

samples/databus/blob-storage-databus-cleanup-function/ABSDataBus_7/SenderAndReceiver/MessageWithLargePayload.cs

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,6 @@
33
[TimeToBeReceived("00:00:10")]
44
public class MessageWithLargePayload : ICommand
55
{
6-
#pragma warning disable CS0618 // Type or member is obsolete
7-
public DataBusProperty<byte[]> LargePayload { get; set; }
8-
#pragma warning restore CS0618 // Type or member is obsolete
6+
public ClaimCheckProperty<byte[]> LargePayload { get; set; }
97
public string Description { get; set; }
108
}

samples/databus/blob-storage-databus-cleanup-function/ABSDataBus_7/SenderAndReceiver/MessageWithLargePayloadHandler.cs

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,14 +2,15 @@
22
using Microsoft.Extensions.Logging;
33
using NServiceBus;
44

5-
public class MessageWithLargePayloadHandler(ILogger<MessageWithLargePayloadHandler> logger) : IHandleMessages<MessageWithLargePayload>
5+
public class MessageWithLargePayloadHandler(ILogger<MessageWithLargePayloadHandler> logger)
6+
: IHandleMessages<MessageWithLargePayload>
67
{
7-
88
public Task Handle(MessageWithLargePayload message, IMessageHandlerContext context)
99
{
10-
#pragma warning disable CS0618 // Type or member is obsolete
11-
logger.LogInformation("Message received. Description: '{Description}'. Size of payload property: {PayloadSize} Bytes", message.Description, message.LargePayload.Value.Length);
12-
#pragma warning restore CS0618 // Type or member is obsolete
10+
logger.LogInformation(
11+
"Message received. Description: '{Description}'. Size of payload property: {PayloadSize} Bytes",
12+
message.Description, message.LargePayload.Value.Length);
13+
1314
return Task.CompletedTask;
1415
}
1516
}
Lines changed: 41 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,58 @@
11
using System;
22
using System.Threading.Tasks;
3+
using NServiceBus;
4+
using NServiceBus.ClaimCheck;
35
using Microsoft.Extensions.DependencyInjection;
46
using Microsoft.Extensions.Hosting;
5-
using NServiceBus;
6-
using SenderAndReceiver;
77

88
Console.Title = "SenderAndReceiver";
99

1010
var builder = Host.CreateApplicationBuilder(args);
11-
builder.Services.AddHostedService<InputLoopService>();
1211
var endpointConfiguration = new EndpointConfiguration("Samples.AzureDataBusCleanupWithFunctions.SenderAndReceiver");
1312

14-
#pragma warning disable CS0618 // Type or member is obsolete
15-
var dataBus = endpointConfiguration.UseDataBus<AzureDataBus, SystemJsonDataBusSerializer>();
16-
#pragma warning restore CS0618 // Type or member is obsolete
13+
var dataBus = endpointConfiguration.UseClaimCheck<AzureClaimCheck, SystemJsonClaimCheckSerializer>();
1714
dataBus.ConnectionString("UseDevelopmentStorage=true");
1815

1916
endpointConfiguration.UseSerialization<SystemJsonSerializer>();
2017
endpointConfiguration.UseTransport<LearningTransport>();
2118
endpointConfiguration.EnableInstallers();
19+
2220
builder.UseNServiceBus(endpointConfiguration);
2321

24-
await builder.Build().RunAsync();
22+
var app = builder.Build();
23+
await app.StartAsync();
24+
25+
var messageSession = app.Services.GetRequiredService<IMessageSession>();
26+
27+
Console.WriteLine("Press 'Enter' to send a large message (>4MB)");
28+
Console.WriteLine("Press any other key to exit");
29+
30+
while (true)
31+
{
32+
var key = Console.ReadKey();
33+
34+
if (key.Key == ConsoleKey.Enter)
35+
{
36+
await SendMessageLargePayload(messageSession);
37+
}
38+
else
39+
{
40+
break;
41+
}
42+
}
43+
44+
await app.StopAsync();
45+
46+
static async Task SendMessageLargePayload(IMessageSession messageSession)
47+
{
48+
Console.WriteLine("Sending message...");
49+
50+
var message = new MessageWithLargePayload
51+
{
52+
Description = "This message contains a large payload that will be sent on the Azure data bus",
53+
LargePayload = new ClaimCheckProperty<byte[]>(new byte[1024 * 1024 * 5]) // 5MB
54+
};
55+
await messageSession.SendLocal(message);
56+
57+
Console.WriteLine("Message sent.");
58+
}
Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,16 @@
11
<Project Sdk="Microsoft.NET.Sdk">
22

33
<PropertyGroup>
4-
<TargetFrameworks>net9.0;net8.0</TargetFrameworks>
4+
<TargetFramework>net10.0</TargetFramework>
55
<OutputType>Exe</OutputType>
6-
<LangVersion>12.0</LangVersion>
6+
<LangVersion>preview</LangVersion>
77
</PropertyGroup>
88

99
<ItemGroup>
10-
<PackageReference Include="NServiceBus" Version="9.*" />
11-
<PackageReference Include="NServiceBus.DataBus.AzureBlobStorage" Version="6.0.*" />
12-
<PackageReference Include="NServiceBus.Extensions.Hosting" Version="3.0.1" />
10+
<PackageReference Include="NServiceBus" Version="10.0.0-alpha.1" />
11+
<PackageReference Include="NServiceBus.ClaimCheck" Version="2.0.0-alpha.1" />
12+
<PackageReference Include="NServiceBus.DataBus.AzureBlobStorage" Version="7.0.0-alpha.1" />
13+
<PackageReference Include="NServiceBus.Extensions.Hosting" Version="4.0.0-alpha.1" />
1314
</ItemGroup>
1415

1516
</Project>

samples/databus/blob-storage-databus-cleanup-function/ABSDataBus_7/prerelease.txt

Whitespace-only changes.

0 commit comments

Comments
 (0)