c#方法中for循环中无法达到的增量
我在这个c#方法中for循环中无法达到的增量,c#,increment,unreachable-code,C#,Increment,Unreachable Code,我在这个for循环中得到了这个不可访问的代码 public IActionResult List(int id) { for (id = 0; id <= 1000; id++) { var fil = _repoFil.GetById(id).Result; var listafiliali = new List<FilialeVM>(); foreach (var filiale in fil) {
for
循环中得到了这个不可访问的代码
public IActionResult List(int id) {
for (id = 0; id <= 1000; id++) {
var fil = _repoFil.GetById(id).Result;
var listafiliali = new List<FilialeVM>();
foreach (var filiale in fil) {
var filialeVM = _mapper.Map<FilialeVM>(fil);
listafiliali.Add(filialeVM);
}
return View(listafiliali);
}
return View();
}
public IActionResult列表(int-id){
for(id=0;id是不可访问的,因为您的for循环中有一行:返回视图(listafiliali);
。该方法在第一次for循环迭代中返回,并在到达前面提到的返回时终止其执行。是不可访问的,因为您有这一行:返回视图(listafiliali);
在for循环中。该方法返回并在第一次for循环迭代中终止其执行,只要它达到前面提到的返回值。在循环完成后返回视图
public IActionResult List(int id) {
var listafiliali = new List<FilialeVM>();
for (id = 0; id <= 1000; id++) {
var fil = _repoFil.GetById(id).Result;
foreach (var filiale in fil) {
var filialeVM = _mapper.Map<FilialeVM>(fil);
listafiliali.Add(filialeVM);
}
}
if(listafiliali.Count > 0)
return View(listafiliali);
return View();
}
public IActionResult列表(int-id){
var listafiliali=新列表();
对于(id=0;id 0)
返回视图(listafiliali);
返回视图();
}
循环完成后返回视图
public IActionResult List(int id) {
var listafiliali = new List<FilialeVM>();
for (id = 0; id <= 1000; id++) {
var fil = _repoFil.GetById(id).Result;
foreach (var filiale in fil) {
var filialeVM = _mapper.Map<FilialeVM>(fil);
listafiliali.Add(filialeVM);
}
}
if(listafiliali.Count > 0)
return View(listafiliali);
return View();
}
public IActionResult列表(int-id){
var listafiliali=新列表();
对于(id=0;id 0)
返回视图(listafiliali);
返回视图();
}
您的代码有几个问题:
您忽略传递的id
:假设我调用List(1234)
,1234
以及List(789)
由于在1st
循环之后返回,因此不会循环id
您永远不会到达return View();
code:您进入循环并从中返回
我猜,你想要这样的东西:
using System.Linq;
...
public IActionResult List(int id) {
// for given id we collect all corresponding FilialeVM items
var listafiliali = _repoFil
.GetById(id) // items correspond to given id
.Result
.Select(fil => _mapper.Map<FilialeVM>(fil)) // mapped to FilialeVM
.ToList(); // organized as list
// If we have any item in listafiliali, view them, otherwise use default View()
return listafiliali.Any()
? View(listafiliali)
: View();
}
您的代码有几个问题:
您忽略传递的id
:假设我调用List(1234)
,1234
以及List(789)
由于在1st
循环之后返回,因此不会循环id
您永远不会到达return View();
code:您进入循环并从中返回
我猜,你想要这样的东西:
using System.Linq;
...
public IActionResult List(int id) {
// for given id we collect all corresponding FilialeVM items
var listafiliali = _repoFil
.GetById(id) // items correspond to given id
.Result
.Select(fil => _mapper.Map<FilialeVM>(fil)) // mapped to FilialeVM
.ToList(); // organized as list
// If we have any item in listafiliali, view them, otherwise use default View()
return listafiliali.Any()
? View(listafiliali)
: View();
}
无法访问它,因为您返回视图(listafiliali)
在第一个iteration@Rafalon谢谢,但是我如何才能返回该变量?为什么在返回找到的第一个值时需要循环?哪一个?不清楚您想要实现什么?请问,原始问题是什么?您试图实现什么?您忽略传递的id
,您不使用for
loop(您从第一次迭代返回)并且您从不调用返回视图();
它是不可访问的,因为您返回视图(listafiliali)
在第一个iteration@Rafalon谢谢,但是我如何才能返回该变量?为什么在返回找到的第一个值时需要循环?哪一个?不清楚您想要实现什么?请问,原始问题是什么?您试图实现什么?您忽略传递的id
,您不使用for
loop(您从第一次迭代返回)并且您从不调用returnview();