you could make the query a bit easier, and avoid the issue, and i think this should "work":

from a in dc.contentlist
where a.contentid != null
select new { id = a.contentid, a.priceclass, .. }).union(
    from b in dc.contentlist
    where dc.contentlist.firstordefault(a => a.contentid == b.contentid) == null)
    select new { id = b.contentid, b.priceclass, .. });


could you please check your table with sp_help to see if there is a different collation in the columns.

there is also a very through explanation on that issue here

Related Query

More Query from same tag