0
手動でMicrosoft.Azure.ServiceBus.Messageを作成してJSONにシリアル化するテストを作成する必要があります。コード例:Azure ServiceBusメッセージをシリアル化できません - 「ExpiresAtUtc」から値を取得中にエラーが発生しました
var message = new Microsoft.Azure.ServiceBus.Message
{
MessageId = "0c8dfad9-6f0f-4d7f-a248-2a48fc899486",
CorrelationId = "78b507b0-6266-458d-afe6-7882c935e481",
Body = Encoding.UTF8.GetBytes("Hello world"),
};
var json = JsonConvert.SerializeObject(message);
シリアライズするときしかし、私は次の例外を取得:
Newtonsoft.Json.JsonSerializationException :
Error getting value from 'ExpiresAtUtc' on 'Microsoft.Azure.ServiceBus.Message'.
---- System.InvalidOperationException : Operation is not valid due to the current state of the object.
任意のアイデア私は、有効なメッセージ(つまり、後でシリアル化できる)を作成することができますか? ExpiresAtUtcは取得できないため、直接設定することはできません。それを間接的に設定する方法はありますか?
リフレクションを使わずにメッセージを設定するよりエレガントな方法があると思っていましたが、十分に公正ではない場合は:-) – nashwan
クレメンスは正しいものがコントロールできなくなると言って正しい方法です。繊細なバランスです。 –