Domanda

Ho creato un TaskDueDate proprietà gestita legato alla ows_DueDate (data e ora) che vorrei per visualizzare nei miei risultati delle query di ricerca. Tuttavia la query non restituisce alcun valore per taskDueDate.

Tutte le idee come posso mostrare la mia proprietà gestita personalizzata? (Sembra che il KeywordQuery ha il metodo SelectProperties.Add per raggiungere questo obiettivo)

string currentUser = SPContext.Current.Web.CurrentUser.Name;
string searchQuery = "select title, path, priority, assignedto, TaskDueDate" +
              " from scope()" + "WHERE \"scope\"=\'All Tasks\'" + 
" and assignedto = '" + currentUser + "'";

FullTextSqlQuery query = new FullTextSqlQuery(SPContext.Current.Site);
query.ResultTypes = ResultType.RelevantResults;
query.QueryText = searchQuery;
ResultTableCollection results = query.Execute();
È stato utile?

Soluzione

Non ne ha parlato nella sua domanda in modo solo per assicurarsi che ...

Lo si esegue una ricerca per indicizzazione completa dell'origine di contenuto DOPO aver mappato l'ows_DueDate strisciò struttura al TaskDueDate proprietà gestita?

Sai di sicuro ci si accontenta di un valore per la proprietà strisciato ows_DueDate?

SOLUZIONE:

Il problema era dovuto al fatto che Teh il parametro FullTextQueriable è impostazione predefinita per falso quando si crea personalizzato cercare le proprietà. Dopo aver impostato questo parametro a 1 con PowerShell mia FullTextSqlQuery restituito i valori per le mie proprietà di ricerca personalizzate.

Set-SPEnterpriseSearchMetadataManagedproperty -Identity {ti id della vostra proprietà personalizzata} -Searchapplication "Applicazione servizio di ricerca" {Nel mio caso} -FullTextQueriable 1

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a sharepoint.stackexchange
scroll top