Как получить возвращаемое значение хранимой процедуры, используя C# asp. net mvc - PullRequest
0 голосов
/ 14 апреля 2020

Я использую ASP. NET MVC и C# для построения системы регистрации участников, и я вызываю хранимую процедуру для проверки информации об участнике в контроллере.

Если информация об элементе является повторением, хранимая процедура вернет сообщение об ошибке и отправит Viewbag во внешний интерфейс, чтобы подсказать, где повторение.

Теперь не только можно вставить информацию об элементе, но и проверять данные, но не может получить возвращаемое значение хранимой процедуры.

код SP

IF NOT EXISTS(SELECT * FROM [dbo].[tMember] WHERE mAccount = @mAccount AND mEmail = @mEmail AND mPhone=@mPhone)
BEGIN
    INSERT INTO [dbo].[tMember] (mAccount , mPwd , mEmail , mPhone , mName ) VALUES (@mAccount , @mPwd , @mEmail , @mPhone , @mName)
    --Messege : OK ==新增成功
    SET @msg = 'OK'
END
IF EXISTS(SELECT * FROM [dbo].[tMember] WHERE mAccount = @mAccount)
BEGIN
--Messege : ErrorCode01 == 帳號重複
    SET @msg = 'ErrorCode01'
END
IF EXISTS(SELECT * FROM [dbo].[tMember] WHERE mEmail = @mEmail)
BEGIN
--Messege : ErrorCode02 == 信箱重複
    SET @msg = 'ErrorCode02'
END
IF EXISTS(SELECT * FROM [dbo].[tMember] WHERE mPhone = @mPhone)
BEGIN
--Messege : ErrorCode03 == 手機號碼重複
    SET @msg = 'ErrorCode03'
END
SELECT @msg AS result END

код контроллера

 public ActionResult Signup()
    {
        return View();
    }
    //使用post傳輸資料
    [HttpPost]
    public ActionResult Signup(string mAccount, string mPwd, string mEmail ,string mPhone, string mName)
    {
        //tMember member = new tMember();
        //member.mAccount = mAccount;
        //member.mPwd = mPwd;
        //member.mEmail = mEmail;
        //member.mName = mName;
        ////新增會員資料
        //db.tMember.Add(member);
        //db.SaveChanges();
        db.sp_add_tMember(mAccount, mPwd, mEmail, mPhone, mName);

        // I dont know how to get SP return value send to front end and judge      
        return View();
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...