sql >> Base de Datos >  >> RDS >> Sqlserver

Vista de Entity Framework y SQL Server

Tuvimos el mismo problema y esta es la solución:

Para obligar al marco de la entidad a usar una columna como clave principal, use ISNULL.

Para obligar al marco de la entidad a no usar una columna como clave principal, use NULLIF.

Una manera fácil de aplicar esto es envolver la declaración de selección de su vista en otra selección.

Ejemplo:

SELECT
  ISNULL(MyPrimaryID,-999) MyPrimaryID,
  NULLIF(AnotherProperty,'') AnotherProperty
  FROM ( ... ) AS temp