-
Notifications
You must be signed in to change notification settings - Fork 3.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Query: Allow providers to influence funcletization on low level #14507
Comments
Has there been any discussion within the team of my idea to centralize all function registration into a single metadata store? If we do that then this use case becomes easy to solve because the end user can modify all of the functions via the fluent api. That also assumes we add a way to mark a parameter as |
@pmiddleton - I had some thoughts about it. But can you elaborate more in this case, how it could be used. If user is using Fluent API for function (like they do for DbFunction) the translation path becomes much different. Further, that is user specific modification, while here we want to provide provider specific modification since provider is bringing the translation too. |
Rather than putting complexity in funcletization it would be better handled in RelationalCommandCache. |
Currently, our funcletization is influenced by providers in 2 ways.
NotParameterizedAttribute
to avoid parameterization of any function's parameter.Both of above works fine till you encounter a method which is coming from other library. This disallows you from putting the attribute on parameter. And in order to determine that the function parameter should not be converted to query parameter, you need more info on parent expression tree to look at the function.
One such example is
string.Compare(string s1, string s2, bool ignoreCase);
The text was updated successfully, but these errors were encountered: