-
Notifications
You must be signed in to change notification settings - Fork 166
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
Search criteria parsing: operator prefixes should not be extracted regardless of the type of the parameter #60
Comments
Stumbled on this one too. |
...but of course we do not have the type of the parameter, since this would require us to feed search param metadata to the parser :-( So the only solution is to remove this functionality completely? |
I am splitting the functionality: leave a simplified parsing and then add various type-specific methods I can post here the final result, but unfortunately it means in any case having to modify all the call sites in the search code - the new class won't be compatible with the old one |
I see this is posted in Spark, but it might well be an API issue. @cknaap do you know which subsystem parses this? |
It is |
This is the solution I came up with - the new
|
Indeed it does happen in Criterium.cs and it happens irrespectively of the type of search parameter. Michele, thanks for your suggestions. Maybe I missed it, but I still don't see where you decide which type of parameter / value you're parsing, hence whether you need to be aware of operator prefixes or not. The structural solution would be to defer the parsing of the value to a point where we know the type of searchparameter. If you look at MongoSearcher.Search, this means splitting the parsing in 2 parts:
I just won't be able to do this very shortly... |
In the code I posted the The search code calls the appropriate |
...?patient=ebda26f3-437a-4c08-a2d5-fe3b0472ddd3
is parsed as 'patient EBda26f3-437a-4c08-a2d5-fe3b0472ddd3
' instead than 'patient EQebda26f3-437a-4c08-a2d5-fe3b0472ddd3
' (etc.)The text was updated successfully, but these errors were encountered: