Я пытаюсь импортировать хранимую процедуру, используя Entity Framework 4, в проекте Asp.Net MVC, используя C #.Но когда я пытаюсь обновить модель в диаграмме сущностей (* .edmx), она будет обновлена до сущности name.Store внутри папки хранимых процедур.
Хранимая процедура:
CREATE PROCEDURE Sp_Feedback
AS
BEGIN
SELECT
f.User_Id, f.Over_All_Rating, f.Features_Liked,
f.Features_Need_Improvement,
f.Will_Recommend_Us, f.Customer_Service_Rating, f.Comments
FROM
Feedback f
END
В моей хранимой процедуре я выбрал несколько столбцов из таблицы (не все столбцы).Поэтому мне нужно добавить новый объект для отображения модели в таблицу.После создания сущности добавьте к ней скалярные свойства, чтобы указать точное имя в таблице, которое мне нужно получить с помощью хранимой процедуры.Наконец мне пришлось сопоставить имя свойства новой сущности с точной сущностью таблицы.
При развертывании развернуть папку хранимой процедуры есть импортированная хранимая процедура, щелкнуть хранимую процедуру, щелкнуть правой кнопкой мыши, выбрать Добавить функцию ИмпортОпция и открытое диалоговое окно показывают, что « Имя импорта функции » и « Имя хранимой процедуры » уже обнаружены в хранимой процедуре, и есть другая опция, которая «»Возвращает коллекцию"
. Содержит четыре параметра:
- Нет
- Скаляры
- Комплекс
- Сущности
В опции Возвращает коллекцию Мне пришлось выбрать опцию сущностей, чтобы выбрать вновь созданные сущности для отображения столбцов хранимой процедуры, потому что мне нужно получитьсписок записей из таблицы.
Когда я закончил сборку проекта, я получил сообщение об ошибке: "нет значения ключа" для вновь созданного объекта, в то время каксопоставление с сущностью таблицы.
После этого я добавил скалярное имя свойства для значения ключа в новую сущность для сопоставления с сущностью таблицы.Я снова строю проект, и у меня появляется другая ошибка: оба объекта имеют одинаковое значение ключа.
Мне нужно импортировать хранимую процедуру на основе запроса с использованием Entity Framework 4.