c#guid-field收到null

问题描述 投票:-2回答:1

我有以下代码:

     public IActionResult Index()
    {
        _fileModel = new FileModel { Files = _fileService.GetFilesForArchivation(), IdOfService = default(Guid) };

        return View(_fileModel);
    }

而且我也实现了两种方法:

   public IActionResult Compress()
    {
        //_compressingService.CompressAllFiles();
        _fileModel.IdOfService = _compressResolverService.Start(_serviceProvider);
        return RedirectToAction("Index");
    }

    public IActionResult CancelCompressing()
    {
        //_compressingService.Stop();
        _compressResolverService.Stop(_fileModel.IdOfService);
        return RedirectToAction("Index");
    }

在第一种方法中,我将IdOfService添加到FileModel。在第二个代码中,我试图将此字段作为参数发送。在第一种方法中,我获得guid的正常值,但在第二种方法中,它具有默认值,我得到

的NullReferenceException

请仔细阅读此问题并提供反馈。

c# asp.net-core controller guid
1个回答
1
投票

如果我从一个动作到另一个动作正确理解你正在失去你的价值,你可以使用

TempData["IdOfService"] = _fileModel.IdOfService; 
TempData.Keep();

把它保存在“记忆中”。

© www.soinside.com 2019 - 2024. All rights reserved.