當我想將我的javascript對象(或實體)添加到我的Azure表存儲時,首先需要通過entityGenerator
運行它們。在Node.js中映射Azure表存儲數據模型的最簡單方法
我的物體看起來是這樣的:
{
id: 1,
name: 'foo',
timestamp: new Date()
}
我需要傳遞給TableService
的實體會是這樣的:
{
id: { '_': 1, '$': 'Edm.Int32' },
name: { '_': 'foo', '$': 'Edm.String' },
timestamp:{ '_': new Date(), '$': 'Edm.DateTime' },
}
這也就是格式,其中的實體從TableService
返回。
將我的對象映射到正確的格式,將它們發送到我的表格存儲是非常簡單的,但我還沒有找到一種簡單的方法來將返回的實體轉換成我的服務返回到我可以輕鬆地處理的常規JavaScript對象。
我可以創建某種通用映射函數來從實體上的_
屬性中獲取值,但似乎有些元數據屬性也會傳遞到實體本身。
有誰知道一個簡單的方法來映射JavaScript對象和Azure表存儲實體嗎?
是否(或應該)將此功能包含在azure-storage
庫中?
我瞭解entityGenerator的需求,但我想知道是否可以從TableService返回原始值(https://github.com/Azure/azure-storage-node/blob/master/lib/services /table/internal/odatahandler.js#L155)。從我的表中獲取它們後,我不需要JavaScript對象上的所有這些OData類型和元數據。有沒有辦法從odatahandler返回這個rawEntity? – Schaemelhout