为什么我收到 CS0103 错误 - ViewBag 不存在?
Why did I get CS0103 Error - ViewBag doesn't exist?
我有 VS 2019 Pro 并使用 .net 5 和 C# 9。我使用 ASP.NET Core Web App(没有 MVC)模板创建了一个项目。我收到 C0103 错误“名称 'ViewBag' 在当前上下文中不存在。”这里摘录了index.cshtml.cs代码:
using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Mvc.RazorPages;
using Microsoft.Extensions.Caching.Memory;
using Microsoft.Extensions.Options;
using ARTS.Client_Models;
using ARTS.Models;
using repository;
:
:
public IActionResult OnGet()
{
this.VM = new home_VM(this._app_settings);
ViewBag.User = new User();
return Page();
}
我开始怀疑是不是因为我没有使用MVC?如果是,为什么?
Razor 页面不支持ViewBag,需要外包Microsoft.AspNetCore.Mvc.ViewFeatures
。但是ViewData是包含在Razor页面中的,所以换成ViewData是更好的方法。
ViewData["User"] = new User();
如果非要用到ViewBag,可以参考这个answer。
我有 VS 2019 Pro 并使用 .net 5 和 C# 9。我使用 ASP.NET Core Web App(没有 MVC)模板创建了一个项目。我收到 C0103 错误“名称 'ViewBag' 在当前上下文中不存在。”这里摘录了index.cshtml.cs代码:
using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Mvc.RazorPages;
using Microsoft.Extensions.Caching.Memory;
using Microsoft.Extensions.Options;
using ARTS.Client_Models;
using ARTS.Models;
using repository;
:
:
public IActionResult OnGet()
{
this.VM = new home_VM(this._app_settings);
ViewBag.User = new User();
return Page();
}
我开始怀疑是不是因为我没有使用MVC?如果是,为什么?
Razor 页面不支持ViewBag,需要外包Microsoft.AspNetCore.Mvc.ViewFeatures
。但是ViewData是包含在Razor页面中的,所以换成ViewData是更好的方法。
ViewData["User"] = new User();
如果非要用到ViewBag,可以参考这个answer。