Azure Storage Services のテーブルストレージに保存するエンティティは、プロパティに使える型が制限される。今のところ、下表の通り。
| プロパティの型 | 詳細 |
|---|---|
| Binary | バイトの配列(最大サイズは64KByte) |
| Bool | ブール値 |
| DateTime | UTC時刻として表現された64bit値(サポートされている値の範囲は1/1/1600〜12/31/9999) |
| Double | 64bitの浮動小数点 |
| GUID | 124bitのグローバル一意識別子 |
| Int | 32bitの整数 |
| Int64 | 64bitの整数 |
| String | UTF-16でエンコードされた値(サイズは最大64KByte) |
この表に挙がっている型以外を使うと、保存するときに例外が発生する。久しぶりに Azure を触ったけど、使える型のことを忘れていて、時間を浪費してしまった。
decimal が使えないのは痛いなぁ。long で代用するしかない……のか。