I have been running a project using Breezejs for a few months now, and everything was working quite fine up to when I updated to latest version ("1.4.5") and metadata import stopped working on IE8.
I was previously working with version "1.3.6" and it was running ok in IE8 (I have added es5-shims and json2 libraries as suggested, for "legacy" browser support).
Since I upgraded to latest version, however, when initializing a new entity manager and issuing the first query it returns the following error:
Unable to either parse or import metadata: [Object expected]
in the ctor.prototype.fetchMetadata method.
Tracing down the issue, I've come to understand that it fails running getES5PropDescriptor method on client-side added properties for entities extended with custom constructors (as specified on Breeze documentation here):
function getES5PropDescriptor(proto, propName) {
if (proto.hasOwnProperty(propName)) {
//next line throws the error!!!
return Object.getOwnPropertyDescriptor && Object.getOwnPropertyDescriptor(proto, propName);
} else {
var nextProto = Object.getPrototypeOf(proto);
return nextProto ? getES5PropDescriptor(nextProto, propName) : null;
}
}
Is this a known issue in Breezejs? Any hint about how to make it work again on IE8 with latest Breezejs version?
I've also tried following suggestion from this post (basically commenting out invocation of isolateES5Props method), but to no avail.
Many thanks in advance for your precious support!