структура сущности не может "добавить функцию импорта" для хранимой процедуры Oracle - PullRequest
3 голосов
/ 26 марта 2012

Я использую Entity Framework со следующими инструментами:

  1. MS Visual Studio 2010 Professional SP1

  2. Последний поставщик данных Oracle с веб-сайта Oracle.(ODAC 11.2 Release 4 (11.2.0.3.0) для 32-разрядных систем) Загрузил его с http://www.oracle.com/technetwork/topics/dotnet/index-085163.html

  3. Сервер Oracle 11g

Моя таблица выглядит такследует

enter image description here

мой сохраненный процесс выглядит следующим образом:

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" выберите "добавить" добавить"импорт функции". Имя импорта функции и имя хранимой процедуры предварительно заполняются. В поле "Возвращает коллекцию я выбираю сущности как a_supplier", которая является импортированной таблицей Oracle.Затем я нажимаю кнопку «Получить информацию о столбце».

Я получаю ответ под названием «Выбранная хранимая процедура не возвращает столбцы.»

Пожалуйста, помогите.

enter image description here

Я бы хотел бытьвозможность получить набор записей из хранимой процедуры в мои классы .net через сущность.

Спасибо

1 Ответ

2 голосов
/ 22 июня 2012

Пожалуйста, выберите сложный в "возвращает коллекцию" и попробуйте снова.

Пример в "Импорте функций и получении неявных наборов результатов | Вставка и обновление данных напрямую"

http://download.oracle.com/oll/obe/EntityFrameworkOBE/EntityFrameworkOBE.htm#t9

...