Хранимые процедуры с помощью ADO.NET Entity Framework - PullRequest
2 голосов
/ 13 февраля 2009

Я пытаюсь использовать хранимую процедуру в рамках сущности. У меня была модель, созданная изначально без сохраненного процесса. Затем я вошел в Обновление модели из базы данных и выбрал нужную хранимую процедуру, а затем добавил ее через функцию импорта. Теперь я вижу функцию в браузере модели в разделе «Импорт функций», но когда я пытаюсь вызвать ее в контексте объекта, я получаю сообщение об ошибке, говорящее, что «xxModel» не содержит определения «xxfunction». Есть идеи, что я могу делать не так?

Я не вижу ошибок в файле, связанном с процедурой.

Вот теги для сохраненных процедур в файле edmx

    <Function Name="p_DeleteDealFacts" Aggregate="false" BuiltIn="false"
        NiladicFunction="false" IsComposable="false"
        ParameterTypeSemantics="AllowImplicitConversion" Schema="dbo">
        <Parameter Name="DealID" Type="int" Mode="In" />

    <FunctionImportMapping FunctionImportName="DeleteDealFacts"
          FunctionName="InterceptModel.Store.p_DeleteDealFacts" />
</EntityContainerMapping>

Ответы [ 2 ]

1 голос
/ 29 декабря 2009

Visual Studio генерирует код функции в выделенном фрагменте модели тогда и только тогда, когда вы указываете возвращаемый тип сущности. Скалярные и нулевые возвращаемые типы не работают. Похоже, ошибка для меня. Вот полная история: Импорт функций в модели сущностей с типом возврата, не являющимся сущностью

0 голосов
/ 13 февраля 2009

Откройте вашу модель данных сущностей в представлении XML и проверьте, есть ли у вас

<! - Ошибки, обнаруженные во время генерации: предупреждение XXXX: таблица / представление / сохраненный процесс ..... MDF.dbo.StoredProcName 'не имеет .... ->

Метки

Если вы не выполните поиск по тегам , а также выполните поиск по этому {Name}. Убедитесь, что ничто не кажется неуместным.

Если вы не можете найти никаких проблем, опубликуйте эти теги и процедуру вашего магазина в вашем вопросе.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...