0

我有一个对象数组Contact。每个联系人有 3 个参数:

  • ID
  • 姓名
  • 功能

我正在该函数中创建该数组:

public ActionResult AutocompleteCollabo(string term)
    {
        int NumDossier = StructureData.DonneNumDossier((string)Session["NumCRPCEN"], (string)Session["MotDePasse"]);
        List<Contact> ListeContacts = StructureData.DonneListeElementDossier(NumDossier);
        Contact[] tabContacts = new Contact[ListeContacts.Count()];
        int count = 0;
        foreach (Contact contact in ListeContacts)
        {
            tabContacts[count] = contact;
            count++;
        }
        var collaborateurs = tabContacts;

        var filteredItems = collaborateurs.Where(
            item => item.IndexOf(term, StringComparison.InvariantCultureIgnoreCase) >= 0
            );
        return Json(filteredItems, JsonRequestBehavior.AllowGet);
    }

现在我想将在函数中作为参数输入的字符串与数组中每个对象的名称函数进行比较。由于数组是我不能使用的对象之一indexOf。有没有人有办法做到这一点?

4

1 回答 1

1

由于您使用的是 Linq,因此您可以在 Contact 对象本身上使用string.Contains 。假设 name 和 function 都是字符串。

var filteredItems = collaborateurs.Where(
            item => item.Name.Contains(term) || item.Name.Function.Contains(term)
            );
于 2013-09-10T12:27:55.097 回答