The compatibility level has been updated; all extensions and patterns must be recompiled.
This document applies to GeneXus 15 Upgrade 11 or higher; for the previous upgrade refer to Extensions and Patterns Compatibility in GeneXus 15.
The Package compatibility Number changed to 123130, Assembly version changed to 11.*, File and product version changed to 15.*.
The following is important for those who extend GeneXus:
- Visual Studio 2017 (any edition) is required
- All packages are required to be rebuilt
- Target framework must be now 4.7.1
- Artech.Common.WeakReference<T> has been deprecated. If you wrote something like this:
WeakReference<KBObject> wref = ....
KBObject obj = wref.Target;
if (obj != null) {
// se puede usar obj porque no fue liberado
}
you now must write something like:
WeakReference<KBObject> wref = ....
KBObject obj;
if (wref.TryGetTarget(out obj)) {
// se puede usar obj porque no fue liberado
}
Another option, if you still include Artech.Common is:
WeakReference<KBObject> wref = ....
KBObject obj = wref.GetTarget();
if (obj != null) {
// se puede usar obj porque no fue liberado
}