return 来自 2 个数组的一组静态数据的最佳做法是什么

What is the best practice to return a set of static data from 2 arrays

如何return 将来自两个静态数组(字符串、十进制)的一组数据添加到视图中?示例 [小,1.00]、[中,3.00]、[大,7.50]。

我一直在查看 Tuple<>,它将 return 数据发送到控制器,但我认为这不是正确的方法,因为我必须在我的 Viewmodel 中创建新属性然后分配数据到return查看。

class :

public class BoxSizeViewModel
{

    public static Tuple<string[], decimal[]> GetDetails()
    {
        string[] Size = { "S", "M", "L" };
        decimal[] Price = { 1, 3, 7.50 };

        return new Tuple<string[], decimal[]>(Size, Price);
    }
}

我正在尝试将大小和价格分配给我可以 return 到视图的 IEnumerable。

我认为您最好使用新的 class 或结构来保存要显示的信息。尽管如此,如果你想使用元组,你应该 return 元组列表,而不是字符串元组,如下所示:

List<Tuple<string, decimal>>

我仍然相信这会更具可读性:

public class ProductInfo 
{
   public string Size { get; set; }
   public decimal Price { get; set; }
}

public static List<ProductInfo> GetDetails()
{
 ...
}

至于合并列表的事情,Linq Zip 操作就是您所需要的。

检查这里的代码:https://dotnetfiddle.net/qyryvY