Ho appena iniziato a utilizzare i contratti di codice nel mio progetto. Tuttavia, ho un problema con l'implementazione del mio repository, che interroga il mio database usando Entity Framework.Contratti di codice .NET 4: "richiede unproven: source! = Null"
ho il seguente metodo:
public IEnumerable<Organization> GetAllOrganizations()
{
return _uow.CreateSet<Party>().OfType<Organization>().AsEnumerable();
}
Il metodo restituisce un insieme contenente tutte le organizzazioni nel database, o un insieme vuoto non c'è organizzazioni nel database.
Tuttavia, questo non va bene secondo il CodeContracts, che mi danno l'errore: "richiede non provata: source = null"
Che cosa sta cercando di dirmi? Posso soddisfare i contratti di codice usando Contract.Assume, per supporre che troverà sempre qualcosa, ma poi ho bisogno di farlo in tutti i metodi che leggono i dati dal database.
Mi manca qualcosa qui o è il comportamento previsto quando si lavora con database e LINQ?
Che cos'è "fonte"? Qualcuno dei metodi che stai chiamando ha dei contratti? –
È [questo] (http://stackoverflow.com/questions/3050279/how-to-avoid-source-null-when-using-code-contracts-and-linq-to-sql) chiedere aiuto? – adrianbanks
@Anon: non ho idea di cosa sia "fonte". Non sono a conoscenza dell'esistenza di contratti sui metodi in Entity Framework, ma non penso. @ Adrianbanks: No, mi dispiace, non riesco a capire come possa aiutarmi. – Vern