Comments (6)
Fixed and new package released. Please check.
from expressionextensionsql.
Thanks for the contribution. I'm studying the modifications. Once you get a final solution a new version will be generated.
from expressionextensionsql.
I should have mentioned, I get this error with the ExpressionExtensionSQL.Dapper package so it seems to be something with how it is translating the boolean to a bit 1 or 0 for the SQL expression
from expressionextensionsql.
Thiago,
I was able to fix this by making the following change to the Concat method:
public static WherePart Concat(WherePart left, string @operator, WherePart right) {
if (right.Sql.Equals("NULL", StringComparison.InvariantCultureIgnoreCase)) {
@operator = @operator == "=" ? "IS" : "IS NOT";
}
if(left.Sql == "1") {
left.Sql = "(1=1)";
}
if (left.Sql == "0") {
left.Sql = "(0=0)";
}
var w = new WherePart() {
Parameters = left.Parameters.Union(right.Parameters).ToDictionary(kvp => kvp.Key, kvp => kvp.Value),
Sql = $"({left.Sql} {@operator} {right.Sql})"
};
return w;
}
I don't think that's a very good solution but your code is very efficient, nested and recursive so I was not able to figure out the best spot to implement a fix.
But the issue arises where the left part of the expression starts with "True AndAlso ..." so just a boolean (i.e. 'True') with no property tied to it (i.e. TableName.PropertyName = True) is what gets interpreted so it just extracts a 1 or a 0
from expressionextensionsql.
Good Morning. I will do the correction today and upload a new version in nuget
from expressionextensionsql.
That seems to work for me, I'll continue testing it this week, thank you
from expressionextensionsql.
Related Issues (3)
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from expressionextensionsql.