linq を使用して sqlserver に DateTime 値を挿入しようとしています。csharp 側の DateTime 値が null である可能性があります。sqlserver の対応するフィールドは、null 許容の日時フィールドです。以下は私のコードです:
using (var dataContext = GetDataContext())
{
DateTime dateTime;
var combinedWorkBasket = new CombinedWorkBasket()
{
FirstName = combinedWorkbasketData.FirstName,
LastName = combinedWorkbasketData.LastName,
Address1 = combinedWorkbasketData.Address1,
RetirementDate = Convert.ToDateTime(combinedWorkbasketData.RetirementDate),
};
dataContext.CombinedWorkBaskets.InsertOnSubmit(combinedWorkBasket);
dataContext.SubmitChanges();
}
結合されたWorkbasketData.RetirementDate がたまたま null (有効な日付または null の可能性がある文字列値) である場合、sqlserver は日付が範囲内にある必要があるというエラーをスローします。combinedWorkbasketData.RetirementDate が null になると、Convert.ToDateTime(combinedWorkbasketData.RetirementDate) は無効なデータ値に変換されます。私は次のことを試しましたが、それでも同じ問題です。
RetirementDate = DateTime.TryParse(combinedWorkbasketData.RetirementDate, out temp) ? Convert.ToDateTime(combinedWorkbasketData.RetirementDate) : Convert.ToDateTime(null)
私は単純に次のことを達成したいと考えています。
ありがとう