Это то, что я ожидал бы быть простым, но он не работает. Я просто хочу иметь возможность создавать хранимые процедуры в моей базе данных SQL Server и вызывать их из своего веб-приложения MVC3. Мне удалось получить свои SP, импортированные в сгенерированную функцию, но когда я вызываю это, я получаю сообщение об ошибке:MVC3 вызов SQL Server Сохраненная процедура
Устройство чтения данных несовместимо с указанной «dbname.school_accreditation». Элемент типа «school_accreditation_id» не имеет соответствующего столбца в устройстве чтения данных с тем же именем.
Я создал хранимую процедуру в SQL Server.
USE [mydb]
GO
/****** Object: StoredProcedure [dbo].[DeleteSchoolAccreditations] Script Date: 02/07/2014 20:56:21 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER PROCEDURE [dbo].[DeleteSchoolAccreditations]
@school_id int
AS
DELETE FROM [dbo].[school_accreditation]
WHERE school_id = @school_id
Сгенерированная функция C# для вызова SP.
public virtual ObjectResult<school_accreditation> DeleteSchoolAccreditations(Nullable<int> school_id)
{
((IObjectContextAdapter)this).ObjectContext.MetadataWorkspace.LoadFromAssembly(typeof(school_accreditation).Assembly);
var school_idParameter = school_id.HasValue ?
new ObjectParameter("school_id", school_id) :
new ObjectParameter("school_id", typeof(int));
return ((IObjectContextAdapter)this).ObjectContext.ExecuteFunction<school_accreditation>("DeleteSchoolAccreditations", school_idParameter);
}
Должен ли я что-либо сделать для этого сгенерированного метода, чтобы заставить его работать. Я передаю метод int, и все это выглядит хорошо, когда я отлаживаю.
Пожалуйста, любая помощь будет получена.
Джо
Ну, это поможет, если вы поймете, какую технологию вы использовали. MVC не имеет никакой функции для доступа к данным. Вы можете использовать любую технологию доступа к данным, которую вы хотите с ней. Кажется, вы используете Entity Framework, который не является MVC. –
Это справедливая точка. Я должен был быть более явным. Спасибо – Yos