Можете ли вы вызывать UDF с Entity Framework 4 без использования мастеров? - PullRequest
2 голосов
/ 07 марта 2011

Признание: без какого-либо разрешения я переписал учебник NerdDinner с .NET Framework 4 и Entity Framework 4 вместо LINQ to SQL, так как был очарован концепцией подхода «сначала код» и шаблоном Razor cshhtml!

Тем не менее, когда я дошел до того, что мне пришлось использовать UDF, чтобы найти ближайший обед, Entity Framework 4. оказался очень сложным.

Поэтому я был бы признателен, если бы кто-нибудь мог указать мнек документации по Entity Framework 4, в которой объясняется, как вызывать функции UDF, поскольку MSDN не смог меня обойти - я потратил 2 часа сорок пять минут на http://msdn.microsoft.com/en-us/library/dd456857.aspx, и это не помогло.Может быть, мозг станет бесполезным !!!

Ответ, который я ищу: вы можете вызвать UDF с Entity Framework 4 без использования мастеров?

Если ответ положительный, дайте мне знатькак это можно сделать.

Большое спасибо заранее.

Ответы [ 3 ]

2 голосов
/ 07 марта 2011

Ни одна структура Entity не может импортировать UDF.Вы можете импортировать только хранимые процедуры.UDF могут вызываться напрямую с использованием стандартного SQL и DbContext.Database.SqlQuery.Если вы создадите тип данных, который будет иметь те же свойства, что и набор результатов SQL, SqlQuery сможет использовать этот тип.

1 голос
/ 10 октября 2012

Ответ на ваш вопрос: да, вы можете.

Взгляните на это http://msdn.microsoft.com/en-us/library/dd456847(v=vs.100).aspx

0 голосов
/ 21 декабря 2011

Вы можете обернуть UDF сохраненными процессами и импортировать их.

CREATE PROCEDURE [dbo].[usp_sel_MyCustomUDF]
    @Parameter int = null                   
BEGIN

    SET NOCOUNT ON;

    SELECT * FROM [dbo].[udf_MyCustomUDF] Parameter) 

END
...