A number of scenarios require application control over the value of the table primary key (ID), for example ability to make it globally unique. As of Friday 2013/11/22, we updated the service so that newly created tables use string as a type of its ID column instead of int.
Note: your existing applications and tables are not affected by this change. Only newly created tables will get the ID columns of type string.
To work with the tables created after this update, you need our latest SDK release that supports IDs of the type string in addition to int. You also need to use the type ‘string’ for your item’s Id type. For example,
public class MyItem { public string Id { set; get; } public string Property1 { set; get; } public DateTime Property2 { set; get; } }
If you are following instructions for a Mobile Services sample or a hands on lab that were written before this update and not updated to reflect this change, you may get a deserialization error. The sample likely tries to use the models with the property ID of type int with the newly created tables. Change the type of the Id property from int to string in the data models in the sample code to avoid the error. Please report such sample/hands on lab on this forum so that we fix it.