У меня есть сохраненная функция, например:
CREATE FUNCTION RegionContains
(
@RegionX float, @RegionY float, @RegionRadius float,
@ObjectX float, @ObjectY float
)
RETURNS bit
AS
BEGIN
DECLARE @IsContained bit
DECLARE @ObjectRadius real
SELECT @ObjectRadius = SQRT(POWER(@ObjectX - @RegionX, 2) + POWER(@ObjectY - @RegionY, 2))
IF @ObjectRadius <= @RegionRadius
RETURN 1
RETURN 0
END
GO
Требуется 5 параметров с плавающей запятой, но в моем проекте на C # есть объекты, которые представляют эти значения.
Итак, я открываю Visual Studio и перетаскиваю сохраненную функцию в конструктор DBML, и получаю волшебную сигнатуру функции, которая имеет все эти double
параметры. Есть ли способ создать оболочку для этого, которая не сломается, когда я обновлю DBML? Я хочу создать функцию, которая принимает два типизированных аргумента, которые извлекают соответствующие значения из этих объектов и затем отправляют их в хранимую процедуру - при этом все еще разрешается вызывать эту функцию-оболочку из запроса linq. VS поддерживает это?