Returns values without the keys denied names, matched case- and whitespace-insensitively.
denied is a denied-field set as EntityInfo.GetDeniedReadFields builds it: lowercased,
holding both the Name and the CodeName of every denied field. Because the match is against
the row's OWN keys, a row keyed by either spelling, in any case, is narrowed.
Returns a shallow COPY when a key was removed and the original object by reference when none
was, so a row that is already narrow costs nothing. The input is never modified, which is what
makes this safe on frozen, shared cache rows.
Returns
valueswithout the keysdeniednames, matched case- and whitespace-insensitively.deniedis a denied-field set as EntityInfo.GetDeniedReadFields builds it: lowercased, holding both theNameand theCodeNameof every denied field. Because the match is against the row's OWN keys, a row keyed by either spelling, in any case, is narrowed.Returns a shallow COPY when a key was removed and the original object by reference when none was, so a row that is already narrow costs nothing. The input is never modified, which is what makes this safe on frozen, shared cache rows.