私はEntityFrameworkを初めて使用し、Oracleストアドプロシージャを呼び出そうとしましたが、成功しませんでした。だからここに私の質問があります:
devart dotConnectを使用してOracleストアドプロシージャを呼び出す方法は?
たとえば、ストアドプロシージャがあります。
procedure get_problems(res out sys_refcursor) is
begin
open res
for
select id, name
from problems;
end;
そして、C#から私は電話をかけています:
using (Entities entities = new Entities())
{
ObjectParameter res = new ObjectParameter("res", typeof(byte[]));
ObjectResult<PROBLEM> problems = entities.SelectAllProblems(res);
}
ただし、「EntityCommandExecutionException」がスローされます。
コマンド定義の実行中にエラーが発生しました。詳細については、内部例外を参照してください。
これが内部例外です:
ORA-06550:行2、列3:\ nPLS-00306:'GET_PROBLEMS'の呼び出しで引数の数またはタイプが正しくありません\nORA-06550:行2、列3:\ nPL / SQL:ステートメントが無視されました
使用しました
"typeof(byte [])"
これは、DevartEntityDeveloperの生成されたコードで見たためです。
psちなみに、大規模なプロジェクトでdotConnectをどのように推奨しますか?