asp.net mvc 在 ActionResult 中多次循环后什么都不做
asp.net mvc do nothing after several loop in ActionResult
我正在研究遗传算法的实现
我使用 ASP.NET MVC4 网络应用程序编写代码。
输入用户:
- 可用出租车数量
- 最大生成
- 最大收敛
根据测试,如果用户输入可用出租车数量少于 30 辆且最大代数少于 100 辆,我的代码将完美运行。
问题是:如果用户输入超过上述条件,那么我的代码只能工作大约 18 - 40 次迭代循环然后它什么都不做。
谁能告诉我如何解决这个问题?
我已经对这个问题做了一些研究,答案是在控制器中添加异步,但没有帮助,我的问题仍然存在。
这是我的整体控制器工作流程:
[HttpPost]
[ValidateAntiForgeryToken]
public async Task<ActionResult> Index(ProsesGADTO dto)
{
if (ModelState.IsValid)
{
- Some Genetic Algorithm Process
while (maxGeneration > countGeneration && checkConvergence < maxConvergence)
{
countGeneration++;
- Extended genetic algorithm process
}
return RedirectToAction("HasilGA");
}
else return RedirectToAction("Index");
}
我编辑了问题以使其更简单。
我没有在最终实现中使用异步。
您的代码中存在无限循环。你需要找出为什么它永远不会满足退出该循环的条件。
我正在研究遗传算法的实现 我使用 ASP.NET MVC4 网络应用程序编写代码。
输入用户:
- 可用出租车数量
- 最大生成
- 最大收敛
根据测试,如果用户输入可用出租车数量少于 30 辆且最大代数少于 100 辆,我的代码将完美运行。
问题是:如果用户输入超过上述条件,那么我的代码只能工作大约 18 - 40 次迭代循环然后它什么都不做。
谁能告诉我如何解决这个问题? 我已经对这个问题做了一些研究,答案是在控制器中添加异步,但没有帮助,我的问题仍然存在。
这是我的整体控制器工作流程:
[HttpPost]
[ValidateAntiForgeryToken]
public async Task<ActionResult> Index(ProsesGADTO dto)
{
if (ModelState.IsValid)
{
- Some Genetic Algorithm Process
while (maxGeneration > countGeneration && checkConvergence < maxConvergence)
{
countGeneration++;
- Extended genetic algorithm process
}
return RedirectToAction("HasilGA");
}
else return RedirectToAction("Index");
}
我编辑了问题以使其更简单。 我没有在最终实现中使用异步。
您的代码中存在无限循环。你需要找出为什么它永远不会满足退出该循环的条件。