DatistEQ扩展函数派生自SQLiteFunction类型。需定义FunctionDescription和SQLiteFunction两个特性。
FunctionDescription特性定义:函数在函数列表中分组、函数体、返回值、函数说明以及作者信息。
SQLiteFunction特性定义:表达式中函数的名称、参数个数以及函数的类型。
[FunctionDescription("其它", "GParse (String)", "GUID",
Description = "将文本转换为GUID值。",
Author = "bc")]
[SQLiteFunction(Name = "GParse ", Arguments = 1, FuncType = FunctionType.Scalar)]
public class GParse : SQLiteFunction
{
public override object Invoke(object[] args)
{
try
{
Guid gid;
if (Guid.TryParse(args[0].ToString(), out gid))
return gid.ToString();
}
catch (Exception)
{
}
return null;
}
}
网友评论