介绍:
我是一名试图学习ASP.NET核心MVC的.NET学生.所以请理解.我在网上搜索了我的问题的答案,但还没有找到适合我的解决方案. @H_301_3@问题:
我想在创建帖子时将创建帖子方法的验证消息传递给索引IActionmethod,并且它们现在将其显示为警报消息.我在网上看到ViewBag在重定向中存活,但TempData确实如此.到目前为止这是我的代码. @H_301_3@创建帖子方法:
我是一名试图学习ASP.NET核心MVC的.NET学生.所以请理解.我在网上搜索了我的问题的答案,但还没有找到适合我的解决方案. @H_301_3@问题:
我想在创建帖子时将创建帖子方法的验证消息传递给索引IActionmethod,并且它们现在将其显示为警报消息.我在网上看到ViewBag在重定向中存活,但TempData确实如此.到目前为止这是我的代码. @H_301_3@创建帖子方法:
public IActionResult CreatePost(string textContent,string headline,string type) { var catType = new Category() { CategoryType = type.ToUpper() }; if (db.Category.Any(s => s.CategoryType.Trim().ToLower() == type.Trim().ToLower())) catType = db.Category.FirstOrDefault(s => s.CategoryType.Trim().ToLower() == type.Trim().ToLower()); var newPost = new Post() { Content = textContent,Header = headline,DateOfPost = DateTime.Now,category = catType }; db.Posts.Add(newPost); db.SaveChanges(); TempData["validation"] = "Your post hase been publsihed"; return RedirectToAction("Index"); }@H_301_3@索引方法:
public IActionResult Index() { var validation = TempData["validation"]; var posts = (from x in db.Posts orderby x.DateOfPost descending orderby x.PostID descending select x); return View(posts); }@H_301_3@我试过这个指南:ClickThis和这一个:ClickThis2但我收到了这条消息: @H_301_3@ @H_301_3@我知道来自2号gudie的这条线可能很重要,但现在还没有如何应用它. –
@H_301_3@var product = TempData["myTempData"] as Product;
@H_301_3@我想做的最后一件事是将它传递给索引视图,但不知道如何.我目前正在从索引传递一个模型.
@H_301_3@告诉我你是否还想看到它.喜欢依赖.
@H_301_3@我得到的所有帮助都是黄金,非常感谢!
解决方法
你配置了Session吗? TempData在幕后使用会话.
@H_301_3@Project.json
"Microsoft.AspNetCore.Session": "1.1.0"@H_301_3@这是Startup.cs文件. – ConfigureServices方法
public void ConfigureServices(IServiceCollection services) { services.AddMemoryCache(); services.AddSession(); services.AddMvc(); }@H_301_3@和配置方法.
public void Configure(IApplicationBuilder app,IHostingEnvironment env,ILoggerFactory loggerFactory) { app.UseSession(); app.UseMvc(routes => { routes.MapRoute( name: "default",template: "{controller=Home}/{action=Index}/{id?}"); }); }@H_301_3@现在尝试使用TempData,它会工作. @H_301_3@您可以使用设置ASPNETCORE_ENVIRONMENT =开发环境变量来设置环境.