none
Wie kann mam verschiedene Parameter einer Abfrage zuordnen ohne alle Fälle auszuprogrammieren RRS feed

  • Frage

  • Hallo

    Ich habe eine Abfrage mit Parameterübergabe, nun will ich vielleicht nicht immer nach Namen suchen sondern voa Drop Down verschiedene Parameter auswählen. Wie kann ich in der Abfrage das Objekt hier als Beispiel Jahrgang dymnamisch machen so dass man einen Platzhalter für dieses Objekt generiert und man diesen zuvor je nach Wunsch mit einem anderen Parameter füllt Bsp. Vorname etc :?? Weiss jemand wie man so was macht ?

    public List<MembershipUserWrapperForMP> GetMembersFiltered(string filter, string add, string filter3, string operand )
    {
      //string operandx = "oneop"; 
      int n = 0;
    
      //public class testvar :Jahrgang{ } 
    
      int.TryParse(add ?? "0", out n);
      var set = GetMembers();
    
      switch (operand.ToLower()) {
      case "oneop":
        set = set.Where(x => (x.Jahrgang ?? "").StartsWith(filter ?? "")).ToList();
        break;
      case "twoopor":
        set = set.Where(x => (x.Jahrgang ?? "").StartsWith(filter ?? "") || (x.UserName ?? "").StartsWith(filter3 ?? "")).ToList();
        break;
      case "twoopand":
        set = set.Where(x => (x.Jahrgang ?? "").StartsWith(filter ?? "") && (x.UserName ?? "").StartsWith(filter3 ?? "")).ToList();
        break;
      case "threeopor":
        set = set.Where(x => (x.Jahrgang ?? "").StartsWith(filter ?? "") || (x.UserName ?? "").StartsWith(filter3 ?? "") || (x.UserName ?? "").StartsWith(add ?? "")).ToList();
        break;
      case "threeopand":
        set = set.Where(x => (x.Jahrgang ?? "").StartsWith(filter ?? "") && (x.UserName ?? "").StartsWith(filter3 ?? "") && (x.UserName ?? "").StartsWith(add ?? "")).ToList();
        break;
      default:
        break;
      }
    
      return set;
    }
    


    Sonntag, 28. August 2011 09:16

Antworten

Alle Antworten

  • Benutze KeyValuePairs und z.B. den PredicateBuilder um deine Expression dynamisch zusammen zubauen.

    public List<MembershipUserWrapperForMP> GetMembersFiltered(List<KeyValuePair<string, object>> criteriaList)
    {
    }
    Montag, 29. August 2011 07:23
  • Hoi Stefan,

    Vielen Dank für deinen Vorschlag! muss ich mir mal ansehen, wird etwas dauern bis ich das umgesetzt habe :)

    Patrick

    Montag, 29. August 2011 10:46
  • Hallo Patch Swiss,

    Ich gehe davon aus, dass die Antwort Dir weitergeholfen hat.
    Solltest Du noch "Rückfragen" dazu haben, so gib uns bitte Bescheid.

    Grüße,
    Robert

    Montag, 5. September 2011 10:10
    Moderator