Как создать оболочки Entity Framework или Linq To SQL для системных хранимых процедур? - PullRequest
0 голосов
/ 27 марта 2009

Я хочу иметь возможность работать с системными хранимыми процедурами (sp_helpXXX и т. Д.) Через сгенерированные оболочки Linq-To-SQL или Entity Framework. Проблема в том, что системные мастера не перечислены в мастерах генерации. Я также попытался запустить sqlmetal.exe вручную, но системные хранимые процедуры не отображаются.

Ответы [ 2 ]

0 голосов
/ 30 июня 2012

вот подробное описание, в котором рассматриваются основы структуры сущностей. Добавление сохраненных процедур определенно непросто, но если вы попробовали это в nHibernate, то это не составит труда. http://msdn.microsoft.com/en-us/data/gg699321.aspx

0 голосов
/ 28 марта 2009

Я не знаю, есть ли автоматический способ, но в linq2sql вы можете вручную определить хранимые процедуры и функции для частичного класса контекста данных.

Вот то, что я использую для функции GetDate sql (которую я могу использовать в выражениях запросов linq):

[Function(Name = "GetDate", IsComposable = true)]
public DateTime GetSystemDate()
{
    MethodInfo mi = MethodBase.GetCurrentMethod() as MethodInfo;
    return (DateTime)this.ExecuteMethodCall(this, mi, new object[] { }).ReturnValue;
}

Тот же принцип применяется к хранимой процедуре (добавьте обычную хранимую процедуру через конструктор и проверьте ее в сгенерированном коде).

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