Tôi xin lỗi vì đã hỏi một câu hỏi cơ bản, tuy nhiên tôi không thể tìm ra nguyên nhân của lỗi này.Thủ tục hoặc chức năng EntityFramework '' mong đợi tham số '', không được cung cấp
Tôi đang sử dụng Khuôn khổ thực thể để thực thi Quy trình được lưu trữ và tôi chuyển bốn tham số, tuy nhiên cơ sở dữ liệu SQL dường như từ chối chúng. ai đó có thể chỉ cho tôi phương hướng đúng không?
Mã của tôi:
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));
nào tạo ra lỗi:
Procedure or function 'SearchDirectoryEntries' expects parameter '@DirectoryId', which was not supplied.
SQL được tạo ra là:
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
Thủ tục lưu trữ là:
ALTER PROCEDURE [dbo].[SearchDirectoryEntries]
@DirectoryId int,
@Latitude decimal(18, 6),
@Longitude decimal(18, 6),
@Range int
Rất cám ơn.
Bạn có thể đăng bản khai báo thủ tục lưu sẵn SQL của mình không? Tối đa các thông số được xác định ở đâu? –
ALTER THỦ TỤC [dbo]. [SearchDirectoryEntries] \t @DirectoryId int, \t thập phân @Latitude (18, 6), \t thập phân @Longitude (18, 6), \t @range int Cheers – James
là gì định nghĩa của 'tìm kiếm' và' điểm'? tức là 'search.DirectoryId' là' int'? – ChrisF