I would recommend opening an Oracle Support service request to get this bug reviewed and fixed.
I'm not sure I understand your last post. Is that a proposed fix that you believe works to solve this issue?
Based on your original post, the problem appeared to be a DB issue as the problem existed in DB 12.1, but not 12.2.
Yes it works to solve this problem. The problem is not in the database version and is related to NLS_CHARACTERSET.
In the docks, I saw that to get NVARCHAR2 you need to declare a string with unicode true and maxsize <= 2000. But if you look at the screen below for code:
entity.Property (e => e.Description)
we get Varchar2, and for it NLS_CHARACTERSET is used, which leads to inverted questions when writing unicode to 12.1 with NLS_CHARACTERSET = WE8ISO8859P1
Until I figured out why VARCHAR2 and not NVARCHAR2, this crutch saves.