Что эквивалентно этому PHP-коду для ASP.NET, есть ли?

Я довольно новичок в ASP.NET/MVC/Razor и ломаю голову над тем, как (логически) преобразовать концепцию PHP в ASP.NET. Это может быть невозможно, но я не уверен, и да, я знаю, что это, конечно, не хороший код.

По сути, я бы хотел обработать многоэтапную / сценическую форму. В моем случае это настройка некоторых разрешений в системе. Для этого я должен сделать эти шаги:

  • Выберите пользователя (интерфейс)
  • Получить список элементов для этого пользователя (Back-end)
  • Перечислите элементы этого пользователя (интерфейс)

С PHP (упрощенно) я мог бы сделать что-то вроде этого:

<?php
include("collectinformation.php");
$data = null;
if($_GET['step'] == 2 && isset($_POST['user'])){
// Collect list of elements for a user selected in step 1
$data = collectinformation($_POST['user']);
}
?>

<form action="form.php?step=2" method="post">
<input type="text" name="user">
<input type="submit">
</form>

<form action="changepermission.php" method="post">
<?php
foreach($data as element){
echo '<input type="text" name="'.$element['name'].'" value="'.$element['value'].'">';
}
?>
<input type="submit">
</form>

Реальная проблема, с которой я пытаюсь противостоять, заключается в том, чтобы обслуживать различные формы с помощью универсального контроллера, в то время как формам также может понадобиться собственный код. Если вышеизложенное служит примером, у меня нет проблем с реализацией $_GET['step'] == 2часть, чтобы сделать переход от представления без списка к тому со списком, но я не знаю, как / где я реализовал бы код для collectinformation если бы я хотел избежать компиляции всего проекта. Обычно это будет частью модели для этой конкретной формы / процесса. С моей нынешней точки зрения это будет означать, что мне придется расширить модель проекта и перекомпилировать ее впоследствии. Есть ли возможность иметь этот конкретный кусок кода либо в своем собственном модуле и динамически загружать его, либо возможно просто иметь этот код в .cshtml файл для второго шага напрямую? Это даст преимущество компиляции JIT, которая облегчит изменение, но будет медленнее.

Я чувствую, что это неправильный подход (особенно с MVC), но это облегчит мне определенные задачи. У нас есть много процессов, которые предъявляют довольно уникальные требования, когда речь идет о видах шагов, которые они включают, и о интерфейсе, необходимом для них, и было бы неплохо иметь возможность работать над ними без перекомпиляции всего проекта и его повторного развертывания.

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]