asp.net mvc 3 - How can I call stored procedure returning both a table and a return statement in a controller in mvc entity framework 4? -


i have stored procedure returns table return errorstate int. how can call stored procedure controller in mvc.
(i'm using entity framework 4)


stored procedure : 

create proc [dbo].[sp_list24](@emp dbo.list readonly ,@error int output) begin begin try declare @error_state int

set @error_state = 1

update dbo.employee set mobile=mobile+11 eid=2 select * @emp set @error=@error_state; select @error

end try begin catch set @error = error_state() select @error

end catch end go


here 'list' userdefined table type passing table valued parameter.

create type [dbo].[list] table(     [eid] [int] null,     [name] [nvarchar](50) null,     [age] [int] null ) 

in controller:

 [httppost]         public jsonresult onclick(int id)         {              using (examemployeeentities1 eee = new examemployeeentities1())             {                 //create table value parameter                 datatable dt = new datatable();                 datarow dr = dt.newrow();                 dt.columns.add("eid");                 dt.columns.add("name");                 dt.columns.add("age");                 dt.rows.add(1, "john", 21);                 dt.rows.add(2, "albert", 22);                 dt.rows.add(3, "martin", 33);                  sqlparameter emp1 = new sqlparameter("@emp", sqldbtype.structured);                 emp1.value = dt;                 emp1.typename = "list";                  //eee.database.executesqlcommand("exec sp_list4 @emp",emp1);                 var resp = eee.database.sqlquery<item>("exec sp_list20 @emp", emp1);                  return json(resp.tolist());               } 

}

in view: 

paragraph id "sdf" , button id "asd"!!!!!

script: 

    $("#asd").click(function () {          var = 1;         var content = "<table><th>id</th><th>name </th><th>age</th></tr>";         $.ajax({             type: 'post',             url: '/home/onclick/',             data: { 'id': },             datatype: 'json',             success: function (data) {                 $.each(data, function (i, item) {                     content += "<tr>";                     content += "<td style=\"background-color:white\">" + data[i].eid + "</td>";                     content += "<td style=\"background-color:white\">" + data[i].name + "</td>";                     content += "<td style=\"background-color:white\">" + data[i].age + "</td>";                     content += "</tr>";                 });                 content += "</table>";                 $('#sdf').html(content);                 alert("success");             },             error: function () {             }         });      }); 

result displays:

id name age

1 john 21

2 albert 22

3 martin 23


it doesn't return @error_state. tried using select @error_state also. don't work. how can call stored procedure returning both table , return statement?

an output parameter enough solve it..try including

 var outparam = new sqlparameter();        outparam.parametername = "error";                     outparam.sqldbtype = sqldbtype.int;                     outparam.direction = parameterdirection.output;                      var resp = eee.database.sqlquery<item>("exec sp_list23 @emp,@error out", emp1,outparam);                     var error = (int)outparam.value; 

Comments

Popular posts from this blog

.htaccess - First slash is removed after domain when entering a webpage in the browser -

Automatically create pages in phpfox -

c# - Farseer ContactListener is not working -