のための「関数インポートを追加」することはできません。エンティティフレームワークは、私は次のツールとエンティティフレームワークを使用していますOracleのストアドプロシージャ
MSのVisual Studio 2010 ProfessionalのSP1
- OracleのWebサイトから
最新のOracleデータプロバイダ。 (ODAC 11.2リリース 4(11.2.0.3.0)のための32ビット)は http://www.oracle.com/technetwork/topics/dotnet/index-085163.html
Oracle 11gのサーバーからダウンロードし
を次のように私のテーブルに見える
私の格納されたprocは次のようになります:
PROCEDURE "GET_SUPPLIERS" (
"SUPP_LIST" OUT SYS_REFCURSOR) IS
BEGIN
OPEN SUPP_LIST FOR
SELECT
SUPPLIER_NAME
FROM
A_SUPPLIER ;
END;
次のように私は、エンティティフレームワークプロジェクトのapp.configを更新:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<connectionStrings>
<add name="Entities" connectionString="tookitoutfromhere" />
</connectionStrings>
<oracle.dataaccess.client>
<settings>
<add name="FSDEVTL.GET_SUPPLIERS.RefCursor.SUPP_LIST" value="implicitRefCursor bindinfo='mode=Output'" />
<add name="FSDEVTL.GET_SUPPLIERS.RefCursorMetaData.SUPPLIER_NAME.Column.0" value="implicitRefCursor metadata='ColumnName=SUPPLIER_NAME;BaseColumnName=SUPPLIER_NAME;BaseSchemaName=FSDEVTL;BaseTableName=A_SUPPLIER;NATIVEDATATYPE=Varchar2;ProviderType=Varchar2'" />
</settings>
</oracle.dataaccess.client>
</configuration>
私は、次の手順を実行します。私の.edmxプロジェクトの下
を - > Model.Store - >ストアドプロシージャ - > GET_SUPPLIERS
右 ストアドプロシージャ「GET_SUPPLIERS」をクリックし 関数インポート名とストアドプロシージャ名「関数インポートを追加」を選択し、事前に移入され の下では、 のコレクションを返しますインポートされたOracle表であるa_supplierとしてエンティティを選択します。 次に、「列情報を取得」ボタンをクリックします。
「選択されたストアドプロシージャが列を返さない」という応答が返されます。
助けてください。
私は、エンティティフレームワークを経由して私の.NETクラスにストアドプロシージャからレコードセットを取得できるようにしたいと思います。
ありがとうございました
を「関数インポートおよび暗黙の結果セットの取得データを直接挿入と更新は、」私のために動作しませんでした。その他の提案はありますか? –