Je m'excuse de ne poser qu'une question basique, mais je ne trouve pas la cause de cette erreur. J'utilise Entity Framework pour exécuter une procédure stockée, et je passe quatre paramètres, mais la base de données SQL semble les rejeter. Est-ce que quelqu'un peut-il me montrer la bonne direction?EntityFramework Procédure ou fonction '' attend le paramètre '', qui n'a pas été fourni
Mon code:
ObjectResult<SearchDirectoryItem> resultList = container.ExecuteStoreQuery<SearchDirectoryItem>("SearchDirectoryEntries",
new SqlParameter("@DirectoryId", search.DirectoryId),
new SqlParameter("@Latitude", point.Latitude),
new SqlParameter("@Longitude", point.Longitude),
new SqlParameter("@Range", search.RangeMiles));
qui produit l'erreur:
Procedure or function 'SearchDirectoryEntries' expects parameter '@DirectoryId', which was not supplied.
Le SQL généré est:
exec sp_executesql N'SearchDirectoryEntries',N'@DirectoryId int,@Latitude decimal(7,5),@Longitude decimal(6,5),@Range int',@DirectoryId=3,@Latitude=53.36993,@Longitude=-2.37013,@Range=10
Les procédures stockées est:
ALTER PROCEDURE [dbo].[SearchDirectoryEntries]
@DirectoryId int,
@Latitude decimal(18, 6),
@Longitude decimal(18, 6),
@Range int
Merci beaucoup.
Pouvez-vous publier la déclaration de votre procédure stockée SQL? Jusqu'à où les paramètres sont définis? –
PROCÉDURE ALTER [dbo]. [SearchDirectoryEntries] \t @DirectoryId int, \t décimal @Latitude (18, 6), \t décimal @Longitude (18, 6), \t @range int Vive – James
Quels sont les définitions de la «recherche» et «point»? c'est-à-dire 'search.DirectoryId' un' int'? – ChrisF