2014-04-14 8 views
16

Utworzono poniżej obiekt, który zostanie zmapowany do typu ElasticSearch. Chciałbym, aby wykluczyć właściwości UnivId przed indeksowane:Wyklucz własność z indeksowania

[ElasticType(Name = "Type1")] 
public class Type1 
{ 
    // To be ignored 
    public string UnivId { get; set; } 

    [ElasticProperty(Name="Id")] 
    public int Id { get; set; } 

    [ElasticProperty(Name = "descSearch")] 
    public string descSearch { get; set; } 
} 

Odpowiedz

18

powinien być w stanie ustawić wartość OptOut atrybutu ElasticProperty, jak następuje:

[ElasticProperty(OptOut = true)] 
public string UnivId { get; set; } 
+0

To działa! Dzięki –

+7

OMG, co za biedna nazwa nieruchomości, zajęło mi trochę czasu, aby to rozgryźć. Dzięki – Funbit

+0

jaka jest różnica między oputem a [ElasticProperty (Index = FieldIndexOption.No)]? czy wykonują tę samą pracę? – batmaci

14

w gniazdo 2,0 ElasticPropertyAttribute otrzymuje według atrybutów typu (StringAttribute, DateAttribute ...). Użyłem parametru Ignore, aby wykluczyć właściwość.

Exemple za wyrażenie:

[String(Ignore = true)] 
public string Id {get;set;} 
+0

Dzięki! Btw, czy wiesz, jak zignorować zagnieżdżone właściwości w mapowaniu bazy kodu (w NEST 2.0)? –

+0

Witaj. Nie, ale byłbym zainteresowany odpowiedzią ... –

+1

@IGPascual przyjrzyj się dokumentom automap dla sposobów zignorowania właściwości - https://www.elastic.co/guide/en/elasticsearch/client/net- api/current/auto-map.html # ignoring-properties –