Я предполагаю, что вы используете ASP.Net с учетом вашей истории сообщений.
Что касается вашего вопроса, здесь есть две проблемы. Во-первых, Session["Selected"]
является нулевым на стороне сервера, поэтому вызов ToString()
для этого является причиной вашей ошибки. Если вы используете C # 6, тогда вы можете использовать оператор объединения нулей для возврата строки. Если нет, то вам понадобится отдельное условие if
.
Во-вторых, вам нужно сравнить значение с пустой строкой в JS на стороне клиента, поскольку ''
никогда не будет равно null
.
Вот полный пример:
try {
if ('<%= (Session["Selected"] ?? "").ToString() %>' === '') {
loadTimesheetgrid();
} else {
if ('<%= (Session["Selected"] ?? "").ToString() %>' === 'More Than 60 Hrs') {
//call the script you will make for morethan 60 hrs
} else {
loadTimesheetgrid();
}
}
} catch (error) {
loadTimesheetgrid();
}
Зависит от вашего варианта использования. Вы можете рассмотреть возможность предоставления значения сеанса для View с использованием ViewModel, чтобы немного СУШИТЬ это.