2011-09-26 16 views
8

Mam bardzo dużą aplikację ASP.NET, dla której tworzę testowe przypadki testowania automatycznego interfejsu użytkownika, częścią ostatniej części tego przypadku testowego jest usunięcie użytkownika, który właśnie utworzył (więc te same szczegóły w każdym pojedynczym uruchomieniu testowym, i oczekują tych samych wyników, żadne dane się nie zmienią.) I tak podjąłem procedurę przechowywaną, aby to zrobić.Nieprawidłowy typ zwracanej odwzorowanej procedury przechowywanej

SP działa dobrze w języku SQL, przetestował go. Teraz zmapowałem go do LINQ2SQL. Jednak po uruchomieniu otrzymuję to:

System.InvalidOperationException: "System.Void" nie jest poprawnym typem zwracanej metody zmapowanej procedury składowanej.

Najważniejsze jest to, że mój SP nie ma typu zwrotu, nie chcę tego.

Odpowiedz

13

Domyślnie pomyślne wykonanie procedury przechowywanej zwróci wartość liczbową 0.

można zmienić typ zwracany do mapowania linq2sql do int? Jeśli nie zależy Ci na zwróconej wartości, możesz po prostu ją zignorować.

+0

Miałem podobny problem i chciałem zwrócić DATETIME z mojej procedury przechowywanej. Postępując zgodnie z instrukcjami dotyczącymi [msdn] (https://msdn.microsoft.com/en-us/library/bb399357 (v = vs.110) .aspx), dostałem aż taki błąd. Kluczem było zmienić mapowanie połączeń na: '[FunctionAttribute (Name =" dbo.GetMyDate ", IsComposable = true)] [return: Parameter (DbType =" DATETIME ")]' –

Powiązane problemy