Reputation: 11310
I am trying to call a stored procedure using entity framework 6. I get an error on the output message.
A first chance exception of type 'System.Data.Entity.Core.EntityCommandExecutionException' occurred in EntityFramework.SqlServer.dll
using (var context = new PartnerPortalEntities2())
{
var outputParameter = new ObjectParameter("result", typeof(string));
var spresults = context.assignRoles_CreateAccountAndContacts(user.Id, role, user.AccountId, user.AccountName, user.ContactId, user.FirstName, user.LastName, outputParameter);
// Control never comes after the above line
if(spresults.Equals("1"))
{
//Do something
}
else
{
// Do something
}
}
When i do a debug, The control goes to line where the stored procedure is called after which we get the above error on the output window and the debugger stops, it never gets into the if statements.
I have run the stored procedure on SQLserver and it works fine there. Any thoughts what could be the error. I have built the context by generating the code from database.
Upvotes: 5
Views: 18447
Reputation: 827
I just had the same error and I managed to fix it!
This error could be a result of other reasons, but the reason for this error was that the SQL server was not configured to accept transport from my debugging station- I had to configure the IP of my computer in the Sql server settings and then it worked perfectly.
Hope it helps.
Upvotes: 0
Reputation: 11310
As suggested by @Shoe, i had embeded the call to stored procedure with in a try catch block which caught the exception and showed the exact error.
It turned out to be that i was not passing the exact variable as the output parameter. Changed result to results as the variable defined in stored procedure was results
var outputParameter = new ObjectParameter("result", typeof(string));
Upvotes: 2