MVC 5 Entity Framework 6 Exécuter la Procédure Stockée

Je suis coincé. J'ai une application existante avec une très grande base de données et une vaste bibliothèque de fonctions et procédures stockées. Tout ce que je veux faire est d'utiliser un DbContext pour exécuter une procédure stockée et renvoyer un ensemble de données ou d'une carte à l'une des entités dans le contexte. Est-ce quelque chose de magique, je n'ai pas découvert sur le net quelque part? Quelqu'un, quelqu'un, s'il vous plaît aider. Voici ce que j'ai eu jusqu'à présent (et ça ne retourne rien, le résultat est -1):

var contacts = db.Database.ExecuteSqlCommand("Contact_Search @LastName, @FirstName",
    new SqlParameter("@LastName", GetDataValue(args.LastName)),
    new SqlParameter("@FirstName", GetDataValue(args.FirstName)));

D'exécution qui retourne -1. J'ai aussi essayé quelque chose à l'effet du présent sans succès:

DbRawSqlQuery<Contact> data = db.Database.SqlQuery<Contact>
                                   ("EXEC Contact_Search @LastName, @FirstName",
                                       GetDataValue(args.LastName), 
                                       GetDataValue(args.FirstName));

Je comprends que je pourrais ajouter un edmx et de la carte à une procédure stockée de cette façon, mais ce n'est pas la méthode préférée. Encore une fois, notre base de données contient près de 450 millions d'enregistrements et d'une bibliothèque de près de 3 000 procédures stockées et des fonctions. Ce serait un cauchemar à maintenir. Suis-je à même de commencer dans la bonne direction? Est Entity Framework le bon choix?

Oui - Entity Framework certainement est le bon choix!

OriginalL'auteur clockwiseq | 2014-10-15