C# Если Иначе с <> - PullRequest
       5

C# Если Иначе с <>

1 голос
/ 16 июня 2020

У меня есть приложение MVC5 Inventory, которое позволяет пользователям заказывать расходные материалы. Просмотр показывает пользователю текущий «наличный запас» для товара, который он sh заказывает. И они вручную вводят количество, которое они sh заказывают.

Что я хочу сделать, так это запретить им отправлять представление, ЕСЛИ число, запрашиваемое для заказа, превышает количество имеющихся в наличии.

Сначала я попытался обработать это в jscript-, и это сработало, но сообщение все еще запускается и поэтому предупреждает пользователя о проблеме, но все равно публикует. Не то, что мне нужно.

Затем я попытался сделать это в контроллере:

На мой взгляд, это соответствующий код

<div class="form-group">
@Html.Label("Units OnHand:", new { @class = "form-control" })
@Html.TextBox("OnHand", null, new { @class = "form-control", id = "OnHand", @readonly = "readonly" })
</div>

<!-- End Units OnHand-->

<!-- Begin Units Ordered-->
<div class="form-group">
@Html.Label("Qty of Units Ordered:", new { @class = "form-control" })
@Html.TextBox("UnitsOrdered", null, new { @class = "form-control", Value = ViewBag.Ordered, id = "UnitsOrdered", onblur = "stopit()"  })
</div>
 <input type="submit" id="addit" value="Add Supply To Request" class="btn btn-default" onclick="addSuppliesnow()" />

Как видите, я попытался запустить onblur = "stopit ()", но это не сработало, потому что оно срабатывает только после следующего щелчка по странице. И в этом случае единственным другим щелчком является кнопка отправки. Таким образом, он срабатывает и правильно предупреждает пользователя, но все равно отправляется.

Потом попробовал что-то делать в контроллере. Я передал два значения из представления (int OnHand, int UnitsOrdered)

int Ordered = UnitsOrdered;
int Onhand = UnitsOnHand;

if (Ordered > Onhand)

{
   return new EmptyResult();

}

else
{
     (save the data as usual . . . . code here)
}

В приведенном выше сценарии каждый раз не удается отправить / отправить. Даже если заказанная сумма на самом деле меньше суммы в наличии. Несмотря ни на что, я не могу попасть в «остальное».

Что я здесь делаю не так? Есть ли лучший / более простой способ получить нужные мне результаты?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...