如何在mvc 4中检查一个数组的每个项是否存在于另一个数组中

本文关键字:数组 是否 存在 另一个 一个 检查 mvc | 更新日期: 2023-09-27 18:16:48

我有两个字符串数组,例如selPhoto["419","418"]preview_photo["418"]。我需要检查selPhoto中的每个元素是否存在于preview_photo是否在mvc4中。

如何在mvc 4中检查一个数组的每个项是否存在于另一个数组中

这个怎么样:

var y = new[] { "419", "418" };
var x = new[] { "418" };

检查交叉口

x.Intersect(y).Contains("418");

您可以尝试检查一个数组是否是另一个数组的子集:

bool isSubset = !array2.Except(array1).Any();

所以它就像

bool isSubset = !preview_photo.Except(selPhoto).Any();

你也可以尝试为这个创建一个扩展方法

public static bool isSubset<T>(this IEnumerable<T> arr1, IEnumerable<T> arr2)
{
    return !arr1.Except(arr2).Any();
}

您可以使用Except并检查结果集中是否有任何项目

var containsAllElements = !preview_photo.Except(selPhoto).Any();
public ActionResult AddtoCart(string selPhoto, string preview_photo)
        {
    string[] values = selPhoto.Split(',');
    string[] photo = preview_photo.Split(',');
    foreach (var item in values)
    {
        if (photo.Contains(item))
        {
          // do action item in second array
        }
        else
        {
         //do action item not in second array
        }
    }
}
var y = new[] { "419", "418" };
var x = new[] { "418" };
bool present=y.ToList().TrueForAll(a=>x.Contains(a));

然而,显示您尝试过的总是很好的