我一直在寻找相关信息,但我似乎无法找到合适的信息。
有什么方法我可以调用我的方法将其保存在列表中吗? 我试过循环列表,但它不起作用。
比如说我想调用这个方法并将它存储在List中,每次使用qsnID ++时它都是一个新的Model.Test
public static double FindAvgScore(double[,] testArray)
{
int k = 2;
double max = FindMax(testArray);
double min = FindMin(testArray);
double midPoint = (max - min) / k;
double avg = min + midPoint;
return avg;
}
我在下面的代码是硬编码的,用于测试数据的传递。 最后,我想将计算字段存储为List中的FindAvgScore方法的返回值。
List<Model.Test> lstItems = new List<Model.Test>()
{
new Model.Test() { qsnID =1011, binOne =100 },
new Model.Test() { qsnID =1012, binOne =20 }
};
然后将List传递给POST方法,我在其中使用javascript将其显示在表格上。硬编码值可以连续显示。
另外,如何在表格中显示整数数组?
先谢谢你了!
答案 0 :(得分:1)
我将假设您正在尝试将List<Model.Test>
传递给某种视图,并且您希望将最大值,最小值,中点和平均值传递给视图。
我建议您创建一个包装所有数据的新对象(下面称为List<T>
),而不是尝试将其存储在ViewModel
中。
public class ViewModel
{
public List<Model.Test> Items { get; set; }
public double Max => FindMax(this.Items);
public double Min => FindMin(this.Items);
public double MidPoint => (this.Max / this.Min) / 2;
public double Average => this.Min + this.MidPoint;
}
使用此ViewModel
类,您可以将Min / Max / MidPoint / Average的计算抽象为关注它的类。
更多关于它如何在ASP.NET MVC中起作用的说明。
模型(Test.cs
)
public class Test
{
public int qsnId { get; set; }
public int binOne { get; set; }
// Other properties related to the object
}
ViewModel (ViewModel.cs
)
public class ViewModel
{
public List<Model.Test> Items { get; set; }
public double Max => FindMax(this.Items);
public double Min => FindMin(this.Items);
public double MidPoint => (this.Max / this.Min) / 2;
public double Average => this.Min + this.MidPoint;
}
控制器(HomeController.cs
)
public class HomeController : Controller
{
public ActionResult Index()
{
var vm = new ViewModel();
vm.Items = GetItems(); // This retrieves the items from wherever you get them from
return new View(vm);
}
}
查看(Index.cshtml
)
@model ViewModel
<h2>Index View</h2>
<ul>
<li>Max: @Model.Max</li>
<li>Min: @Model.Min</li>
<li>MidPoint: @Model.MidPoint</li>
<li>Average: @Model.Average</li>
</ul>
<table>
<thead>
<tr>
<th>QSN Id</th>
<th>Bin One</th>
</tr>
</thead>
<tbody>
@foreach (var item in Model.Items)
{
<tr>
<td>@item.qsnId</td>
<td>@item.binOne</td>
</tr>
}
</tbody>
</table>
请原谅我,如果其中任何一个不能编译,它都是从内存中输入的。这应该可以帮助你!