Я создал хранимую процедуру, которая принимает параметры для создания пользователя.Если пользователь уже существует, он устанавливает выходной параметр на «Пользователь уже существует» и больше ничего не делает.
Теперь я сопоставил эту функцию (InsertNewUser) с моей Entity Framework и вызываю ее так:
context.InsertNewUser(email, name, passwordhash, salt, ???)
The ???вот где у меня проблемы.В хранимой процедуре этот параметр является параметром OUTPUT.Я попытался объявить строку, а затем передать "out ОбъявленныйСтрока", но это было не правильно.
Я не уверен, что поступаю правильно, есть мысли?
Это хранимая процедура:
ALTER PROCEDURE dbo.InsertNewUser
(
@eMail nvarchar(256),
@firstName nvarchar(256),
@lastName nvarchar(256),
@passwordHash nvarchar(256),
@salt nvarchar(256),
@output nvarchar(256) OUTPUT
)
AS
/* Saves a user to the db. */
BEGIN
--First check if the user doesn't exist
IF EXISTS (SELECT eMail FROM UserSet WHERE eMail = @eMail)
--Return that user exists
SET @output = 'User exists'
ELSE
INSERT INTO UserSet
VALUES (@eMail, @firstName, @lastName, @passwordHash, @salt)
END