Seeing sequence contains no elements sounds like there is no data if reading without a where condition or there is a where condition which when executed had nothing to return in regards to the .Where or .FirstOrDefault etc. So if we used the query statement below if the category does not exists we get no elements/records back.
In both cases done properly one would create a unit test method to validate this.
If not familiar with unit test time to set a breakpoint back in the service and check to see the query results or in this case no results. Unit test to validate or invalidate this and other code to known if the code is correct or not.
DO NOT be looking at the view level until you ruled out backend code first.
Another option is to turn on logging and examine the SQL generated by EF or write an SQL statement which matches what you think your EF query is doing.
Lastly make sure you are looking at the right database server and table, see coders get this wrong many times.
public static async Task<List<Product>> GetProductsWithProjection(int categoryIdentifier, bool discontinued)
{
var productList = new List<Product>();
await Task.Run(async () =>
{
productList = await Context.Products
.Include(product => product.Supplier)
.Where(product => product.CategoryId == categoryIdentifier &&
product.Discontinued == discontinued &&
product.UnitsInStock >0)
.Select(Product.Projection)
.ToListAsync();
});
}