2013-03-18 62 views
0

我剛開始使用Azure移動服務,並陷入了相對簡單的問題。也許我做錯了什麼......日期字段比較,azure移動服務服務器端JavaScript API

我有一個表日期scheduledFor,並從服務器端腳本我需要發出像「WHERE scheduledFor < SYSDATE」的查詢。 我真的會喜歡使用Query.where(function)方法,我不想在JavaScript代碼中編寫SQL查詢。你能建議如何做到這一點嗎?

我嘗試以下操作:

tables.getTable('myTable').where(function(currDate) { 
    return this.scheduledFor < currDate 
}, new Date()).read({ 
    success: function(results) { 
    // Do something 
    } 
}) 

,並得到Error: Unsupported literal value Mon Mar 18 2013 18:07:06 GMT+0000 (GMT Standard Time)

然後我試着寫:

tables.getTable('pushMessages').where(function(currDate) { 
    return new Date(this.scheduledFor) < currDate 
}, new Date()).read({ 
    success: function(results) { 
    // Do something 
    } 
}) 

,並得到Error: The expression 'new Date(this.scheduledFor)'' is not supported.

看來where功能有具體的語法,但我不能在MSDN中找到關於它的文檔。

你能告訴我,我在哪裏可以瞭解更多關於JavaScript API,並且更具體地約

回答

0

我們已經追查這種行爲的問題與我們在處理查詢日期對象的方式查詢對象蔚藍的移動服務。我們正在修復。作爲臨時的解決方法,是否可以將日期存儲爲表格中的刻度?你應該能夠查詢沒有任何問題。

+0

謝謝Yavor。您的解決方法可能會奏效,但我們需要在幾個地方更改代碼。所以現在我們將堅持使用'mssql.query'。 – 2013-03-20 13:18:37

+0

我可以訂閱那個問題,或者在它將被修復時以某種方式得到更新嗎? – 2013-03-20 13:20:38

+0

不幸的是,我們的服務器代碼錯誤跟蹤器仍然是內部的。我們在GitHub上公開跟蹤我們的客戶端SDK錯誤,但我們還沒有在服務器上。我們會在部署修復程序時嘗試更新此主題。 – 2013-03-25 05:34:29