Come posso delimitare i valori della borsa delle proprietà, quindi la ricerca li tratta come parole ricercabili individuali?
-
10-12-2019 - |
Domanda
Attualmente sto usando la borsa della proprietà con valori che sono virgola separati qualcosa come:
web.AllProperties["fruits"] = "bananas, apples, oranges, tomatoes";
.
Attualmente la ricerca è trattandoli come una parola di ricerca e mi chiedo quale delimitatore sto usando per la ricerca per usarli come parole ricercabili individuali quando indicizzato o se è anche possibile in questo modo?
Soluzione
Se si dispone di un elenco completo dei diversi tipi di frutta (o qualsiasi altro oggetto) che si desidera cercare, è possibile utilizzare i metadati gestiti e configurare un termine personalizzato.
Altri suggerimenti
La borsa della proprietà è semplicemente una tabella di hash.Potresti iniziare con un array e iterali per aggiungere una proprietà per ogni articolo.Quindi aggiungi una proprietà per la frutta:
SPWeb web = SPContext.Current.Web;
web.AllowUnsafeUpdates = true;
$fruitsArray = @("fruit","bannana","apple","orange");
foreach ($i in $fruitsArray)
{
web.AllProperties["MyFruitTerm" + [array]::IndexOf($fruitsArray,$i)] = $i;
web.IndexedPropertyKey.Add($i);
}
web.Update();
web.AllowUnsafeUpdates = false;
.