Hi Osama,
It's clear from the message that the query couldn't be translated to sql, this is due to the use of Contains() function which is not supported when trying to evaluate results directly from the database, you can get around this by loading all the results first like they are suggesting using AsEnumerable for example ...
you would have something like this in this case :
var result = _myContext.Person.AsEnumerable(). Where(p => p.Email.Value.Contains("Alex")).ToList();
This approach is however not recommanded because it will load all the table data to memory before filtering causing a performance issue , you should review your query or at least use lazy loading .
In your case for example , there are not many names that contains "Alex" , so I would just use this instead
var result = _myContext.Person
. Where(p => p.FirstName.Value =="Alex"
||p => p.FirstName.Value =="Alexandre"
||p => p.FirstName.Value =="Alexis"
).ToList();