В настоящее время я использую структуры данных, подобные следующим:
public class Individual
{
//Other properties omitted for brevity sake
public List<IndividualName> IndividualNames {get; set;}
}
и
public class IndividualName
{
public string FamilyName {get; set;}
public string GivenName {get; set;}
public string MiddleName {get; set;}
}
Я пытаюсь использовать некоторые выражения динамического поиска, чтобы перейти от уровня презентации к уровню хранилища (чтобы фактически применить поиск).
Однако у меня возникли некоторые проблемы из-за того, что у индивидуума могут быть индивидуальные имена 1-M, и я пытаюсь использовать LINQ, чтобы получить все индивидуальные имена индивидуума, чтобы их можно было запросить.
Например, ради - вот как выглядит выражение:
searchExpressions.Add(new SearchExpression("Individual
.IndividualNames
.Select(GivenName)
.FirstOrDefault()"
, ComparisonOperator.Contains, "Test");
В настоящее время это будет определять только то, содержит ли GivenName в первом экземпляре IndividualName значение «Test». Вышеуказанное работает так, как должно - но я немного застрял в том, как определить, содержит ли строка любое из IndividualNames.
Буду признателен за любую помощь - поскольку я попробовал несколько вещей без какой-либо удачи.