Mieliśmy ten sam problem i to jest rozwiązanie:
Aby zmusić strukturę encji do używania kolumny jako klucza podstawowego, użyj ISNULL.
Aby zmusić strukturę encji do nieużywania kolumny jako klucza podstawowego, użyj wartości NULLIF.
Prostym sposobem na zastosowanie tego jest zawinięcie instrukcji select swojego widoku w innym select.
Przykład:
SELECT
ISNULL(MyPrimaryID,-999) MyPrimaryID,
NULLIF(AnotherProperty,'') AnotherProperty
FROM ( ... ) AS temp