首页 新闻 赞助 找找看

任务并行在MVC中的使用求解决

0
悬赏园豆:60 [已关闭问题] 关闭于 2015-12-23 21:35

代码:

public ActionResult List(string category, string keyWord, int pageIndex = 1)
        {
            Parallel.Invoke(SetDropDownList);
            Task<List<Book>> task=Task<List<Book>>.Factory.StartNew(()=>{
                List<Book> books = null;
                if (!string.IsNullOrEmpty(category))
                {
                BookQueryCategories cate = (BookQueryCategories)Enum.Parse(typeof(BookQueryCategories), category);
                books = new BookManager().GetBooks(cate, keyWord);
                }
                else
                {
                    books = new BookManager().GetBooks();
                }
                     return books;
            });
            List<Book> book = task.Result;
            PagedList<Book> pagedBooks = new PagedList<Book>(book, pageIndex, pageSize);
            //Task t = Task.Factory.StartNew(SetDropDownList);
            //SetDropDownList(category);
            
            ViewData["keyWord"] = keyWord;

            return View("List", pagedBooks);
        }

结果前台是一片混乱,求解决方案:

       也就是说不用并行的话能显示的好,因为我在View视图中使用foreach输出图书中的书名,作都 ...这样一来全都乱了.

飞鸟Xeon的主页 飞鸟Xeon | 初学一级 | 园豆:2
提问于:2015-07-21 23:10
< >
分享
所有回答(3)
0

那你为啥非要用并行呢?闻起来香还是喝起来辣?

不用新技术不是程序员?!

爱编程的大叔 | 园豆:30839 (高人七级) | 2015-07-21 23:16

什么新技术。我只想在MVC中使用并行开发,如果有好的东西我愿意聆听,大哥。你很厉害我知道...我很希望.NET技术,可是我现在只能攻读Java        为了工作,哎...我有一学生到上海找工作,.NET工程师二年工作经验只给6000,Java能搞到9000

支持(0) 反对(0) 飞鸟Xeon | 园豆:2 (初学一级) | 2015-08-31 21:07

还有我知道前端不应该用并行,乱是必然的...我只贴后台,也想知道这代码有没有问题

支持(0) 反对(0) 飞鸟Xeon | 园豆:2 (初学一级) | 2015-08-31 21:07

@飞鸟Xeon: 所以你判断好不好就是某个时间点钱多不多,这也算一个方法。

支持(0) 反对(0) 爱编程的大叔 | 园豆:30839 (高人七级) | 2015-09-02 11:50
0

你可以并行运算,但不是这样并行..

吴瑞祥 | 园豆:29449 (高人七级) | 2015-07-21 23:30
0

你在需要顺序运算的地方使用并行计算.那我们能说什么好呢?! 使用场景不对啊

万雅虎 | 园豆:326 (菜鸟二级) | 2015-07-23 17:16
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册