Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/256.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 将模型从服务方法传递到MVC5中的重定向页面_C#_Asp.net Mvc 5 - Fatal编程技术网

C# 将模型从服务方法传递到MVC5中的重定向页面

C# 将模型从服务方法传递到MVC5中的重定向页面,c#,asp.net-mvc-5,C#,Asp.net Mvc 5,我是MVC和MVC5的新手,所以如果这相对容易的话,请容忍我,我只是在搜索中找不到任何有用的东西 在我的应用程序中,我有一个博客页面,用户可以在其中搜索和选择要查看的博客。当他们选择要查看的博客时,表单将发回并处理请求,该请求将转到my blog服务,该服务将检索该博客的所有帖子。问题是,一旦我为blog posts页面填充了viewmodel,我如何将填充的viewmodel发送到控制器以重定向到该页面 当用户单击按钮查看某个博客时,表单提交将调用博客管理器,该管理器将调用此方法 publi

我是MVC和MVC5的新手,所以如果这相对容易的话,请容忍我,我只是在搜索中找不到任何有用的东西

在我的应用程序中,我有一个博客页面,用户可以在其中搜索和选择要查看的博客。当他们选择要查看的博客时,表单将发回并处理请求,该请求将转到my blog服务,该服务将检索该博客的所有帖子。问题是,一旦我为blog posts页面填充了viewmodel,我如何将填充的viewmodel发送到控制器以重定向到该页面

当用户单击按钮查看某个博客时,表单提交将调用博客管理器,该管理器将调用此方法

 public void ViewBlogPosts(int blogId)
    {
        var mgr = new BlogManager();
        var bpvm = mgr.GetBlogPostVm(blogId);
        //redirect to blog post page, passing bpvm             
    }
上面调用此函数,返回视图的填充viewmodel

public BlogPostViewModel GetBlogPostVm(int blogId)
    {
        var mgr = new BlogManager();
        var blog = mgr.GetBlogById(blogId);
        var blogPostList = mgr.BlogPostsForBlog(blogId);
        blog.BlogPosts = blogPostList;
        var bpvm = new BlogPostViewModel { Blog = blog };

        return bpvm;
    }

因此,在我的ViewBlogPosts方法中,如何将bpvm传递到blogposts视图?

不清楚您在这里提出的问题。如果您没有对POST操作进行更改,您不需要重定向生成视图的
ActionResult
方法是什么。您可以
返回视图(模型)
。如果确实需要传递数据,则需要使用
TempData
Session
并在重定向的GET操作中调用它。对于PRG,我总是参考这个。