![](/img/trans.png)
[英]Forcing a string field to DateTime in WCF query with Azure Table Storage
[英]Convert string field to datetime field in Azure table storage
我在Azure表中有一個字段,該字段以字符串格式保存日期時間。 我想用DateTime字段替換它,並轉換字符串列中的值。 解決此問題的最佳方法是什么?
在SQL中,我可以通過創建一個新列並運行一條更新語句來做到這一點。
我自己還沒有嘗試過,但是這是/應該執行的步驟。 這需要一個C#/ VB / etc腳本。
通常,這是一個完整的PITA,也是對象數據庫和存儲服務的基礎之一。
Azure Table Storage Client本機可以理解DateTime(但不能理解DateTimeOffset),因此您可能需要考慮讓SDK自行處理此事。
否則,將DateTimes表示為字符串的最佳方法是顯式存儲和檢索它們作為使用“ u”格式編寫和解析的UTC值。
var dateAsString = myDateTime.ToString("u");
我不知道它是否會起作用,但是您可以嘗試“幸福的無知”:
Real Table商店實際上並不關心實體的形狀(Dev結構可能有所不同)。 將您的實體屬性更改為DateTime,但是在Setter測試中,如果未將值解析為DT,則該值為Datetime。 就像是
private DateTime myDT
public DateTime MyDT
{
get
{
return myDT;
}
set
{
DateTime = null;
if(value is DateTime)
{
myDT = value;
}
else
{
myDT = DateTime.Parse(value);
}
}
}
希望隨着時間的推移,或者明確地成批處理,如果您只是簡單地加載實體並再次保存它們,則會將它們全部設置為DateTime。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.