我創建了一個存儲過程,該參數用於創建用戶。如果用戶已經存在,則將輸出參數設置爲「用戶已存在」,並且不再執行任何操作。使用LINQ和實體框架獲取存儲過程輸出參數
現在我已經映射了該功能(InsertNewUser)到我的實體框架和我調用它像這樣:
context.InsertNewUser(email, name, passwordhash, salt, ???)
的???是我遇到麻煩的地方。在存儲過程中,這個參數是一個OUTPUT參數。我試着聲明一個字符串,然後傳入「out declaredString」,但這是不正確的。
我不確定我會以正確的方式去思考這個問題嗎?
這是存儲過程:
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
so .. much .. easy ..爲什麼我沒有想到ref ?!只試過了 – Phil 2010-10-22 14:45:38