Почему стиль не распознается элементом td в razor?

#html #asp.net-mvc #razor #model-view-controller

#HTML #asp.net-mvc #razor #модель-представление-контроллер

Вопрос:

У меня есть этот столбец в таблице HTML в коде Razor. Я хочу изменить его фон на основе значения статуса.

   <td @(@InspectionReport.Status == 0 ? style = "Background-Color: lightgreen;" : @InspectionReport.Status == 1 ? style = "Background-Color: lightgray;" : @InspectionReport.Status == 2 ? style = "Background-Color: blue;" : @InspectionReport.Status == 3 ? style = "Background-Color: yellow;" : "")>
 

но в нем говорится, что

стиль не существует в текущем контексте

Ответ №1:

Вместо того, чтобы использовать style напрямую, используйте некоторый класс в td element

 <td class="@(InspectionReport.Status == 0 ? "lightgreen" : InspectionReport.Status == 1 ? "lightgray" :InspectionReport.Status == 2 ? "blue" : InspectionReport.Status == 3 ? "yellow" : "")"></td>
 

затем создайте классы в своем css-файле следующим образом:

 td.lightgreen{
    background-color:lightgreen;
}
td.lightgray{
    background-color:lightgreen;
}
td.blue{
    background-color:blue;
}
td.yellow{
    background-color:yellow;
}