c# - 如何将 ViewData 传递给类中的 Action 方法?

标签 c# .net asp.net-core

我要更换

public IActionResult Index()
{
ViewData["SomeData"] = ...
return View();
}

public IActionResult Index()
{
 _someDataCretor.Create(...);
return View();
}

在 SomeDataCretor.Create() 中应该发生什么才能让它起作用?为View获取ViewData。

谢谢。

最佳答案

ViewData 定义为 public ViewDataDictionary ViewData { get;放; }。因此,您可以将其作为参数传递给您的方法:

public IActionResult Index()
{
    _someDataCretor.Create(ViewData);
    return View();
}

Create(ViewDataDictionary viewdata) 方法中:

viewdata["SomeData"] = ...;

但我认为更合理的方法是从 Create() 方法返回一个对象,该对象将传递给 Index View ,如下所示一个 View 模型。

关于c# - 如何将 ViewData 传递给类中的 Action 方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69259107/

相关文章:

c# - 在 ASP.NET 核心中使用时,如何从另一个项目访问 EF 核心的 DbContext?

azure - Asp.net core CloudConfigurationManager.GetSetting() 为 null

c# - OutputDataReceived(和 ErrorDataReceived)的发射率很慢,会创建一个大缓冲区

c# - 为什么委托(delegate)必须是静态的?

c# - 从串口接收到的数据有错误的换行符

c# - 需要了解简短的 ASP.NET 源代码

c# - 如何使用仅具有键值参数的帮助 HttpClient 发送表单数据 POST 请求

c# - 如何验证 XML 文件是否实现特定架构

c# - 获取新条目的主键

c# - 请求 Spotify 访问 token 时遇到问题 [错误请求]