We updated to NSB 7 and now use Sql Server for the transport and persistence.
(Side note: this works after updating a lot of messages, because somehow they became incompatible as the serializer was changed from Newtonsoft.Json to NServicebus.NewtonsoftSerializer. All validation logic has to be removed from the message class constructors.)
OK, so in SSMS 17.8.1 (latest), when I open the table for an endpoint the BodyString column shows Chinese characters. The text is not garbage it's just Chinese.
So my question: why does the computed column show Chinese characters? The collation in the database is the default.
var transport = endpointConfiguration.UseTransport<SqlServerTransport>();
transport.ConnectionString( connectionString );
transport.DefaultSchema( "dbo" );
transport.UseSchemaForQueue( "error", "dbo" );
transport.UseSchemaForQueue( "audit", "dbo" );
//this shows Chinese text
transport.CreateMessageBodyComputedColumn();
Why is that and what am I missing here? This is .NET 4.72, the transport is an Azure Sql database.