2017-06-16 9 views
0

SQL Serverテーブルに値を挿入するストアドプロシージャにフォーム値を渡そうとしています。しかし、私はエラーを取得しています:ストアドプロシージャの問題を介してMVCフォームからDBへ:ストアドプロシージャがストアドファンクションにマップされていないために実行できません

function import 'appEntities.CreateUser' cannot be executed because its not mapped to a stored function.

それをグーグルすると、私はSO Error calling Stored Procedures from EntityFrameworkを投稿し、私はそれを利用しようとしたこれを得ました。しかし、上記のSOソリューションが示唆しているように、.edmxファイルにストアドプロシージャのエンティティモデルが見つかりません。次のように私のストアドプロシージャは、私のコンテキストクラスである:

public virtual int CreateUser(string userLanID, string email) 
{ 
     var userLanIDParameter = userLanID != null ? 
      new ObjectParameter("UserLanID", userLanID) : 
      new ObjectParameter("UserLanID", typeof(string)); 

     var emailParameter = email != null ? 
      new ObjectParameter("Email", email) : 
      new ObjectParameter("Email", typeof(string)); 
return((IObjectContextAdapter)this).ObjectContext.ExecuteFunction("CreateUser", userLanIDParameter, emailParameter) 
    } 

これが正常に私のストアドプロシージャに縛ら取得とどのような援助がいただければ幸いです。ありがとうございました!

更新

私は解決策としてこれを試してみた:http://sanganakauthority.blogspot.nl/2013/07/the-function-import-cannot-be-executed.htmlが、これは動作しません。

私は、下図のように機能がそれを再インポート削除:

There is a function and stored procedure populated.

私はこれを行うときしかし、私はこのエラーを取得します。実行しても問題は解決しました。下図のように

しかしモデルから生成し、データベースを実行して、マッピングを固定した後のモデルからデータベースを生成、私は、格納された調達の参照を失う:

enter image description here

任意のアイデア何私は間違っているか、これを機能させるために何をする必要があるのですか?

答えて

関連する問題