Acabo de empezar a usar contratos de código en mi proyecto. Sin embargo, tengo un problema con la implementación de mi repositorio, que consulta mi base de datos utilizando Entity Framework..NET 4 Contratos de código: "require unproven: source! = Null"
que tienen el siguiente método:
public IEnumerable<Organization> GetAllOrganizations()
{
return _uow.CreateSet<Party>().OfType<Organization>().AsEnumerable();
}
El método devuelve una colección que contiene todas las organizaciones en la base de datos, o una colección vacía que no hay organizaciones en la base de datos.
Sin embargo, esto no es aceptable de acuerdo a CodeContracts, que me dan el error: "no probada requiere: fuente = null"
¿Qué se trataba de decirme? Puedo satisfacer los contratos de código usando Contract.Assume, para asumir que siempre encontrará algo, pero luego tengo que hacer eso en todos los métodos que lean datos de la base de datos.
¿Me falta algo aquí, o es un comportamiento intencionado cuando se trabaja con bases de datos y LINQ?
¿Qué es "fuente"? ¿Alguno de los métodos que está llamando tiene contratos? –
¿Es [este] (http://stackoverflow.com/questions/3050279/how-to-avoid-source-null-when-using-code-contracts-and-linq-to-sql) pregunta alguna ayuda? – adrianbanks
@Anon: No tengo idea de qué es "fuente". No estoy al tanto de si hay contratos sobre los métodos en el Entity Framework, pero no lo creo. @adrianbanks: No lo siento, no puedo ver cómo eso puede ayudarme. – Vern