2

エンティティの挿入中に問題に直面しています。何が悪いのかわかりません。挿入すると、「値が範囲外です」という StorageClientException が発生します。

私のテーブルサービスエンティティは次のようになります

public class Itinerary : TableServiceEntity
{
     public string Name { get; set; }
     public DateTime DOB { get; set; }
     public int Sex { get; set; }
     public string ToPNR { get; set; }
     public string ReturnPNR { get; set; }
     public string ContactNumber { get; set; } 
     public DateTime TravelDate { get; set; }
     public DateTime ReturnDate { get; set; }
}

完全な旅程の詳細が提供されるとエンティティが挿入されますが、片面の詳細しかない旅程の場合、挿入メソッドは特定の例外で失敗します。

どんな助けでも大歓迎です。

4

1 に答える 1

6

私が推測する問題は、あなたの DateTime フィールドにあります。データを Table Storage に格納する前にそれらを初期化していない場合、これらのフィールドに割り当てられる値は .NET DateTime.Min 値の値になります。残念ながら、この値は Azure Table Storage の範囲外です。したがって、Azure テーブル ストレージの DateTime フィールドに値を指定することを常にお勧めします。デフォルト値を同じものに割り当てたい場合は、CloudTableClient.MinSupportedDateTime プロパティを使用します。これにより、Azure Storage でサポートされている最小値でフィールドが初期化されます - http://msdn.microsoft.com/en-us/library/microsoft.windowsazure.storageclient.cloudtableclient.minsupporteddatetime.aspx

お役に立てれば

于 2013-02-06T21:27:14.870 に答える