У меня есть ситуация, в которой мне нужно проверить поля базы данных. Каждое поле может иметь свой собственный и отдельный процесс проверки.
Можно ли определить функцию проверки как сигнатуру делегата в коде C #, где реализация делегата как NVARCHAR (MAX) находится в базе данных SQL? Затем во время выполнения я могу извлечь эту функцию из базы данных и выполнить ее.
Пример
public delegate string ValidateFunction(List<string> Params)
.
if (Row[0].TranslateFunction != null)
{
string test = GetTargeTableValue( new List<string> { "mm" }, Row[0].TranslateFunction);
}
.
private string GetTargeTableValue(List<string> sqlParams, ValidateFunction FieldValidation)
{
return FieldValidation(sqlParams);
}
.
Row [0] .TranslateFunction находится в таблице базы данных типа NVARCHAR (max) и содержит что-то вроде
(SQL)
'string GetUom( List<string> Params)
{return Params[0].ToUpper() } '