Problem:
I had a class created using the EF tools. It generated a field which was a nullable Guid. The datatype declaration was:Guid? Status_ID
Each time I ran my controller code to build out my query. I ran the code
Guid? ms_ID = Guid.Parse(MilitaryStatus_ID);
predicate = predicate.Or(l => l.MilitaryStatus_ID.Equals(ms_ID));
This would always through the unknown system.object error. It was driving me crazy.
Solution:
I did not have any issues against data types of Guid which lead me to think about the nullable operator. This seemed to be the issue so I removed it for testing and was able to run the above code no problems. Thus realized that the issue was Linq not dealing with the nullable condition of my variable correctly. Thus the work around was to use == instead of Equals operator.Guid? ms_ID = Guid.Parse(MilitaryStatus_ID);
predicate = predicate.Or(l => l.MilitaryStatus_ID == ms_ID);
No comments:
Post a Comment