I do not think that using Azure Mobile Services should push you to rework all of your existing architecture. That being said, thre are two possible solutions that you could try.
The first one is to actually not use the EntityData classes of Azure Mobile Service - it is not mandatory to inherit from EntityData in orer to use AMS. You need to inherit EntityData in case you want to use TableController which is probably a good idea since it provides you with a lot of builtin functionality but you can choose to use a plain ApiController and your current models.
Another possible solution is to use the so called DTOs (Data Transfer Objects) which can help you keep your current architecture but still be able to use AMS.
Here are some link with more info about DTO:
What is Data Transfer Object?
Create Data Transfer Objects (DTOs)
A possible implmentation:
Let's say that you have the following model:
public class MyUser
{
public int MyId
{
get;
set;
}
public string SomeOther
{
get;
set;
}
}
As you have pointed out, if you want to use this model with AMS you need to use their Id property instead of MyId. If you want to keep MyUser intact you can introduce the following class:
public class MyUserDTO : EntityData
{
public string SomeOther
{
get;
set;
}
}
Now your service will use MyUserDTO which is like a proxy for your original model. The problem that you have to tackle is that you should convert between MyUserDTO and MyUser. If your models are simple and you do not have complex hierarchies that would be quite easy. If you have complex models DTOs might not be the correct approach. Automapper is a tool that can help you with mapping from model to DTOs and vice-versa.
Still, I do not have much information about your architecture and using DTOs might not be a good fit.