When a request to an OData v4 service returns a base Entity Type, according to $metadata, it is feasible for the service to actually return a derived type. Today, the CSharp proxy will ignore the @odata.type property and materialize the entity as the Base type. Ideally, the proxy would use the @odata.type information to realize that a derived type was returned and would instantiatiate the corresponding derived C# type.