![]() |
1
1
答案假设sampleEntityFrameworkProvider是引用实现。 对提供程序实现执行的每个SQL命令都由sampleEntityFrameworkProvider.sampleProviderServices.createdCommandDefinition处理。 此方法调用CreateCommand,然后将dbcommandtree传递给sampleEntityFrameworkProvider.sqlGenerator,后者属于dbExpressionVisitor类型。 sqlgenerator初始化的静态字典以处理翻译。 我在sqlGenerator.InitializeCanonicalFunctionHandlers中找到了我要查找的内容,然后按照所示的模式进行操作。 只需向字典中添加一个新的处理程序方法,该方法键入要处理的EDM函数的名称。 在这种情况下,处理程序只需要在函数被写出之前重命名它。 同样,此功能的默认实现handleFunctionDefaultGivenName(dbFunctionExpressione,String StoreFunctionName)。 |