Отображение типов данных CLR и SQL SERVER в UDF - PullRequest
0 голосов
/ 28 сентября 2018

Я пытаюсь создать UDF в C #.Функция C # возвращает строку, и мне нужно вернуть ее как CHAR (40) из UDF.

Функция c # в основном равна

public static string functionname() {
   return "mystring";
}

UDF создается с помощью

create function functionname() returns char(40) 
as external name NameSpace.Class.functionname;

Я пробовал разные типы возврата и аннотации для функции C #, но не получил правильную комбинацию.

Типы возврата string или SqlString создают ошибку в сценарии SQL, напримерCREATE FUNCTION for functionname failed because T-SQL and CLR types for return value do not match.

Тип возврата SqlChars не компилируется с ошибкой Cannot implicitly convert type 'string' to 'System.Data.SqlTypes.SqlChars'

Это работает, если я возвращаю NCHAR (40) из UDF, но мне нужен CHAR (40).

Как мне этого добиться?

...