Ich versuche, den folgenden Befehl in einer ASP.Net Core App auszuführen.Fehler beim Versuch, gespeicherte Aktualisierungsprozedur mit Entity Framework Core auszuführen
await _context.Database.ExecuteSqlCommandAsync(
"EXEC AdmissionConsultEndCurrentAndPending @PracticeId @UserId @AdmissionId",
parameters: new[] { AdmissionId, assignments.UserId, assignments.PracticeId });
Ich habe den eigentlichen Befehl mit diesen Kombinationen versucht, so gut
EXEC AdmissionConsultEndCurrentAndPending @PracticeId, @UserId, @AdmissionId
AdmissionConsultEndCurrentAndPending, @PracticeId, @UserId, @AdmissionId
Die drei Werte, die vergangen sind, sind drei ganze Zahlen. Für den Fall, zählt es hier ist die gespeicherte Prozedur
ALTER PROCEDURE [dbo].[AdmissionConsultEndCurrentAndPending]
@AdmissionId INT,
@UserId INT,
@PracticeId INT
AS
BEGIN
SET NOCOUNT ON;
UPDATE
AdmissionConsults
SET
CurrentConsult = 0
WHERE
AdmissionId = @AdmissionId AND
PracticeId = @PracticeId AND
CurrentConsult = 1
END
Wenn ich laufe dies obwohl ich die folgende Fehlermeldung: No mapping to a relational type can be found for the CLR type 'Int32[]'.
Ich bin nicht sicher, ob diese Fehler auf den int-Wert beziehen ich vorbei als Parameter oder vielleicht, da es eine Aktualisierungsabfrage ist, versucht es, einen Int-Wert für die Anzahl der betroffenen Zeilen zurückzugeben. Wie auch immer, ich muss es noch funktionieren lassen.
Haben Sie Kommas müssen Params trennen? – JamieD77
Ich hatte sie ursprünglich und nahm sie heraus, um zu versuchen, nachzuahmen, wie Sie es in SQL ausführen würden. – Jhorra
Ich werde ein paar Kombinationen davon versuchen. – Jhorra