Все еще действительно борется с этим и, кажется, вращается по кругу.
У меня есть следующий код, который сводит меня с ума. Он должен заполнить список элементов, которые будут использоваться в текстовом поле автозаполнения:
public string[] GetAutoComplete(string prefixText, int count)
{
string memberid = HttpContext.Current.Session["MemberID"].ToString();
string locationid = HttpContext.Current.Session["LocationID"].ToString();
string inhouse = HttpContext.Current.Session["Inhouse"].ToString();
string supplier = HttpContext.Current.Session["Supplier"].ToString();
string groupw = HttpContext.Current.Session["Group"].ToString();
string external = HttpContext.Current.Session["External"].ToString();
MyEnts autocomplete = new MyEnts();
var r = from p in autocomplete.tblAutoCompletes
where p.MemberId == memberid && p.LocationId == locationid && p.ACItem.Contains(prefixText)
select p.ACItem;
if (inhouse == "Inhouse")
r = r.Where(p => p == inhouse);
if (supplier == "Supplier")
r = r.Where(p => p == supplier);
if (groupw == "Group")
r = r.Where(p => p == groupw);
if (external == "External")
r = r.Where(p => p == external);
r.OrderBy(p => p);
return r.ToArray();
То, что я пытаюсь получить с помощью динамического предложения where в соответствии со следующим:
Если inhouse = "Inhouse", то в списке предметов должно быть слово "Inhouse". Если inhouse! = "Inhouse", слово "Inhouse" должно быть исключено из списка.
Эту же логику следует затем применять к различным пунктам where, т.е. поставщику, группе, внешнему.
Я искренне перепробовал множество различных методов, но я не могу, чтобы жизнь заставила меня работать, и это меня несколько расстраивает.
Если кто-нибудь может предложить способ сделать это, вы либо получите большой поцелуй, либо большое морозное пиво, если наши пути когда-нибудь пересекутся.