Пересмотрел кучу кода по MVC, Везде примера на 500 строчек кода минимум.
Есть список справочник Plane (ключ key.plane
)
Есть текущая запись InstanceC (ссылка на справочник InstanceC.ID_plane
)
Как просто из контроллера загруженного списка установить значение и считать выбранное значение пользователем?
У меня есть следующий код: AccountController.cs
public ActionResult ClickDetails(String slctplane, String Description,String SaveInstance, string AddInstance, string ActivePlane, string RestartInstance, string GeneratePassword, string ResetDB, String DelInstance)
{
if (ActivePlane != null)
{
String id_plane = slctplane; // Выбранный тарифный план
}
}
Модель:
public class Plane
{
// ID - тарифного плана
[Key]
public int key_plane { get; set; }
// Название тарифного плана
public String Name_plane { get; set; }
// Кол-во пользователей
public int Num_users { get; set; }
// Максимальный размер БД
public int Size_db { get; set; }
// Максимальная частота обращений в минуту н инстанс
public int Freq_in_minute { get; set; }
// Цена в месяц в $
public int Price_usd { get; set; }
// Цена в месяц в р.
public int Price_r { get; set; }
}
Модель
public class InstanceC
{
[Key]
// ID - инстанции
public int key_Instance { get; set; }
//Пользователь, кому пренадлежит инстанция String
public String ID_user { get; set; }
// ключ тарифного плана
//Ключ сервера, куда будет обращаться IOT
public int ID_Server { get; set; }
// Login MQTT
public String Login_inst { get; set; }
//Password MQTT
public String Password_inst { get; set; }
public int SetStatusForBroker { get; set; }
public String Description { get; set; }
public int ID_plane { get; set; }
public String Name_plane { get; set; }
public int Price_usd { get; set; }
public int Price_r { get; set; }
public int Num_users { get; set; }
public int RealStatus { get; set; }
public String Name_server { get; set; }
public String Name_domain { get; set; }
}
У меня в Details.cshtml есть следующий код
@{
ViewBag.Title = "Подробнее/";
}
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width" />
</head>
<body>
@using (Html.BeginForm("ClickDetails", "Account", FormMethod.Post))
{
<div>
<h2>Подробнее</h2>
<div class="cloud-box">
<div class="row">
<div class="col-md-12">
<h3>Информация о инстанции</h3>
</div>
</div>
@foreach (var i in ViewBag.Details)
{
<div class="row">
<div class="col-md-8">
<table class="table cloud-data">
<tbody>
<tr>
<td>Название</td>
<td>
<input name="Description" type="text" value="@i.Description" class="form-control" aria-label="Sizing example input" aria-describedby="inputGroup-sizing-sm">
<button name="SaveInstance" value="@i.key_Instance" type="submit" class="btn btn-success btn-sm pull-right">
<i class="glyphicon glyphicon-floppy-saved"></i>
Сохранить
</button>
<button name="DelInstance" value="@i.key_Instance" type="submit" class="btn btn-danger btn-sm pull-right">
<i class="glyphicon glyphicon-floppy-saved"></i>
Удалить
</button>
</td>
</tr>
<tr>
<td>Тарифный план</td>
<td>
<button type="button" value="" class="btn btn-success btn-sm pull-right" data-toggle="modal" data-target="#ActivePlaneDlg">
<i class="glyphicon glyphicon-usd"></i>
Активировать
</button>
<div class="modal fade" id="ActivePlaneDlg" tabindex="-1" role="dialog" aria-labelledby="ActivePlaneTitle" aria-hidden="true">
<div class="modal-dialog modal-dialog-centered" role="document">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="ActivePlaneTitle">Активация тарифного плана</h5>
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">×</span>
</button>
</div>
<div class="modal-body">
Старый тарифный план будет аннулирован.
Активировать и оплатить новый тарифный план?
</div>
<div class="modal-footer">
<button class="btn btn-secondary" id="ActivePlane" name="ActivePlane" value="id_plane=1">
<i class="glyphicon glyphicon-usd"></i>
Да
</button>
<!--
<input type="submit" name="ActivePlane" value="Сохранить" />
<button type="button" class="btn btn-secondary" data-dismiss="modal">Да</button> -->
<button type="button" class="btn btn-primary" data-dismiss="modal">Нет</button>
</div>
</div>
</div>
</div>
</tr>
<tr>
<td>Статус тарифного плана</td>
<td>
<font color="green">Активирован</font>
</td>
</tr>
<tr>
<td>Дата продления</td>
<td>01.01.2019</td>
</tr>
<tr>
<td>Автопродление</td>
<td>Активировано</td>
</tr>
<tr>
<td>Сервер</td>
<td>@i.Name_domain</td>
</tr>
<tr>
<td>Пользователь</td>
<td>
@i.Login_inst
<button type="button" class="btn btn-cloud btn-cloud-danger btn-sm pull-right" data-toggle="modal" data-target="#RebootInstanceDlg">
<i class="glyphicon glyphicon-repeat"></i>
Перезапуск
</button>
<div class="modal fade" id="RebootInstanceDlg" tabindex="-1" role="dialog" aria-labelledby="RebootInstanceTitle" aria-hidden="true">
<div class="modal-dialog modal-dialog-centered" role="document">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="RebootInstanceTitle">Перезагрузка</h5>
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">×</span>
</button>
</div>
<div class="modal-body">
Вы уверены, что хотите перезагрузить инстанс?
</div>
<div class="modal-footer">
<!-- <button type="button" name="RestartInstance" class="btn btn-secondary" data-dismiss="modal">Да</button>
<input type="submit" name="RestartInstance" value="Да" />-->
<button class="btn btn-secondary" id="RestartInstance" name="RestartInstance" value="id_instance=1">
<i class="glyphicon glyphicon-repeat"></i>
Да
</button>
<button type="button" class="btn btn-primary" data-dismiss="modal">Нет</button>
</div>
</div>
</div>
</div>
</td>
</tr>
<tr>
<td>
Пароль
</td>
<td>
@i.Password_inst
<button type="button" class="btn btn-cloud btn-cloud-danger btn-sm pull-right" data-toggle="modal" data-target="#ResetPasswordInstanceDlg">
<i class="glyphicon glyphicon-refresh"></i>
Сгенерировать
</button>
<div class="modal fade" id="ResetPasswordInstanceDlg" tabindex="-1" role="dialog" aria-labelledby="ResetPasswordInstanceTitle" aria-hidden="true">
<div class="modal-dialog modal-dialog-centered" role="document">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="ResetPasswordInstanceTitle">Генерация нового пароля</h5>
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">×</span>
</button>
</div>
<div class="modal-body">
Сгенерировать новый пароль?
</div>
<div class="modal-footer">
<button class="btn btn-secondary" id="GeneratePassword" name="GeneratePassword" value="id_plane=2">
<i class="glyphicon glyphicon-refresh"></i>
Да
</button>
<!-- <button type="button" id="GeneratePassword" class="btn btn-secondary" value="id_psw=1" name="GeneratePassword" data-dismiss="modal">Да</button> -->
<!--<input type="submit" name="GeneratePassword" value="Да" />-->
<!--
<button class="btn btn-danger" id="resetdb" name="ResetDB" value="id_plane=1">
<i class="glyphicon glyphicon-trash"></i>
Сброс БД
</button>
>-->
<button type="button" class="btn btn-primary" data-dismiss="modal">Нет</button>
</div>
</div>
</div>
</div>
</td>
</tr>
<!----------------------------Начало: Список доступных портов---------------------------------------------------->
@foreach (var a in ViewBag.PortsDetail)
{
<tr>
<td>Протокол</td>
<td>
@a.NamePort
</td>
</tr>
<tr>
<td>Порт №</td>
<td>
@a.NumPort
</td>
</tr>
<hr>
}
<!---------------------------Конец: Список доступных портов------------------------------------------------------>
</tbody>
</table>
</div>
</div>
<hr>
<div class="row">
<div class="col-md-12">
<h3>Сброс БД</h3>
</div>
<div class="col-md-10">
Это сотрет все сохраненные сообщения в БД.
</div>
<div class="col-md-2">
<form action="https://*/console/9751325/details/reset" class="pull-right" id="reset-form" method="post">
<button class="btn btn-danger" id="resetdb" name="ResetDB" value="id_plane=1">
<i class="glyphicon glyphicon-trash"></i>
Сброс БД
</button>
</form>
</div>
</div>
<hr>
<div class="row">
<div class="col-md-12">
<h3>API</h3>
</div>
</div>
<div class="row">
<div class="col-sm-2">
<strong>API ключ</strong>
</div>
<div class="col-sm-10">
<code>0942387c-de7c-4241-2349da3-e59e4c1afdf6</code>
</div>
</div>
}
</div>
</div>
}
</body>
</html>
Я пытаюсь сделать окно для отображения списка разных типов и не могу вызвать окно для обобщенного интерфейса
мне нужно определить нажатие клавиш в консольном проекте (не набора в консоли)
Для чего тут используется функция count(), ведь если isset() выполнится, то понятно, что массив содержит больше одного элемента или нет?