Tivemos o mesmo problema e esta é a solução:
Para forçar a estrutura de entidade a usar uma coluna como chave primária, use ISNULL.
Para forçar a estrutura de entidade a não usar uma coluna como chave primária, use NULLIF.
Uma maneira fácil de aplicar isso é envolver a instrução select da sua visão em outro select.
Exemplo:
SELECT
ISNULL(MyPrimaryID,-999) MyPrimaryID,
NULLIF(AnotherProperty,'') AnotherProperty
FROM ( ... ) AS temp