プログラムの事とか

お約束ですが「掲載内容は私個人の見解です」

Azure Table Storage で NaN をどうにできた話

前回 puni-o.hatenablog.com の続きです

あの後Issue(プルリクではない)投げておきました

github.com

そして先ほどCloseされたので確認 (9月末には終わってたっぽい)

読み込み

プロジェクトを開いてAzure.Data.Tablesが12.0.1なことを確認、ごにょごにょしていたところ消して実行

Test1 , NormalValue , 2021/12/10 0:52:05 +00:00 , 1.23
Object of type 'System.String' cannot be converted to type 'System.Double'.

ちゃんとNaNの読み込みに失敗していることを確認しておきます

続いて最新の12.3.0に上げてもう一回実行してみます

Test1 , NormalValue , 2021/12/10 0:53:30 +00:00 , 1.23
Test2 , NaN , 2021/12/10 0:53:30 +00:00 , NaN
Test3 , PositiveInfinity , 2021/12/10 0:35:45 +00:00 , ∞
Test4 , NegativeInfinity , 2021/12/10 0:35:45 +00:00 , -∞

ちゃんと読めてるよぉぉぉ!!!

double.NaN , double.PositiveInfinity , double.NegativeInfinity

すべて読めます。EdmDouble の時にちゃんとdoubleでParseしてくれるようになったので当たり前なんですが、良かった

書き込み

いままでWindowsAzure.Storageで作っていたテストデータをAzure.Data.Tables側で作るようにしてみます

.NET number values such as positive and negative infinity cannot be written as valid JSON.

はい

double.NaNは通す

double.PositiveInfinitydouble.NegativeInfinity と キマリ*1 は通さない

まとめ

NaNがどうにかできてよかったです

*1:FF10発売から21年だってさ・・・