Может быть, что-то подобное поможет ...
@Html.DisplayFor(modelItem => item.FoodAmount % 1 == 0 ? item.FoodAmount.ToString("F0") : item.FoodAmount.ToString("F2"))
Это должно обеспечить следующие результаты:
FoodAmount | Output
--------------------
3.00 | 3
3.01 | 3.01
3.5 | 3.50
Я специально сжал это в одну строку, чтобы соответствовать вашему Html Helper-коду, но вы можете создать вспомогательный метод / метод расширения для этого, если хотите.
Основная идея состоит в том, чтобы получить остаток от деления на 1. Если результат равен нулю (то есть он может быть разделен на 1 без остатка), то его можно считать целым числом
Альтернатива : Это также вариант, который может улучшить чтение ...
item.FoodAmount.ToString("F2").TrimEnd('0', '.')
Это может даже дать вам лучшие результаты ...
FoodAmount | Output
--------------------
3.00 | 3
3.01 | 3.01
3.5 | 3.5