Как передать объект управления от контроллера к другому
Я пытаюсь передать объект, который является областью управления :
ConnectionOptions options = new ConnectionOptions { Username = sv.User, Password = sv.Pass }; ManagementScope scope = new ManagementScope(@"\\" + sv.Name + @"\root\cimv2", options); scope.Connect(); return scope;
Это первый контроллер, в основном я получаю входные данные из формы, а затем подключаюсь к серверу с этими входными данными, используя область действия, которая позже поможет мне выполнять команды
public IActionResult Proceed(Server serverModel) { if (!ModelState.IsValid) return View("Connect"); else { try { // ---------- This is the function returning the scope ---------- \\ ManagementScope scope = Connecting.ConnectToServer(serverModel); // ---------- This is the function returning the scope ---------- \\ return RedirectToAction("Menu", "Schema"); } catch (Exception e) { ViewBag.Message = e.Message.ToString(); return View("Failed"); } } }
И это второй контроллер , обратите внимание, что я передаю область действия в качестве второго параметра, но это не будет работать, очевидно, потому что область действия неизвестна
public IActionResult ExportProceed(SchemaExport ex) { if (!ModelState.IsValid) return View("Export"); else { try { // ---------- This is where i need to pass the scope ---------- \\ ExportProcess.CreateDirectories(ex, scope); // ---------- This is where i need to pass the scope ---------- \\ return RedirectToAction("Menu", "Schema"); } catch (Exception e) { ViewBag.Message = e.Message.ToString(); return View("Failed"); } } }
Что я уже пробовал:
Я попытался отправить объект scope как TempData и преобразовать его с помощью json, но он говорит, что я не могу преобразовать объект ManagementScope.