本文整理汇总了C#中Nest.ConnectionSettings.SetDefaultPropertyNameInferrer方法的典型用法代码示例。如果您正苦于以下问题:C# ConnectionSettings.SetDefaultPropertyNameInferrer方法的具体用法?C# ConnectionSettings.SetDefaultPropertyNameInferrer怎么用?C# ConnectionSettings.SetDefaultPropertyNameInferrer使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Nest.ConnectionSettings
的用法示例。
在下文中一共展示了ConnectionSettings.SetDefaultPropertyNameInferrer方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: CreateConnectionFromSettings
public ConnectionSettings CreateConnectionFromSettings()
{
var clientSettings = new ConnectionSettings(new Uri(string.Format("http://{0}:{1}", Host, Port)));
clientSettings.SetDefaultPropertyNameInferrer(name => name);
return clientSettings;
}
示例2: GetElasticClient
private static IElasticClient GetElasticClient(Uri serverUri, bool deleteExistingIndexes = false) {
var settings = new ConnectionSettings(serverUri).SetDefaultIndex("_all");
settings.EnableMetrics();
settings.SetJsonSerializerSettingsModifier(s => {
s.ContractResolver = new EmptyCollectionElasticContractResolver(settings);
s.AddModelConverters();
});
settings.MapDefaultTypeNames(m => m.Add(typeof(PersistentEvent), "events").Add(typeof(Stack), "stacks"));
settings.MapDefaultTypeIndices(m => m.Add(typeof(Stack), ElasticSearchRepository<Stack>.StacksIndexName));
settings.MapDefaultTypeIndices(m => m.Add(typeof(PersistentEvent), ElasticSearchRepository<PersistentEvent>.EventsIndexName + "-*"));
settings.SetDefaultPropertyNameInferrer(p => p.ToLowerUnderscoredWords());
var client = new ElasticClient(settings);
ConfigureMapping(client, deleteExistingIndexes);
return client;
}
示例3: ConfigureElastic
public IElasticClient ConfigureElastic()
{
var connectionString = ConfigurationManager.ConnectionStrings["Elastic"];
if (connectionString == null)
throw new ArgumentException("No elastic connection string found");
var data = connectionString.ConnectionString.Split(';');
var url = data.FirstOrDefault(x => x.StartsWith("Url", StringComparison.CurrentCultureIgnoreCase));
if (url == null)
throw new ArgumentException("No URL parameter in elastic connection string");
var index = data.FirstOrDefault(x => x.StartsWith("DefaultIndex", StringComparison.CurrentCultureIgnoreCase));
if (index.IsNullOrEmpty())
throw new ArgumentException("No DefaultIndex parameter in elastic connection string");
index = index.Substring(13);
var node = new Uri(url.Substring(4));
var settings = new Nest.ConnectionSettings(node);
settings.SetDefaultIndex(index);
settings.SetDefaultTypeNameInferrer(type => type.FullName.Replace("Demo.Application.ServiceStack.", "").Replace('.', '_'));
// Disable camel case field names (need to match out POCO field names)
settings.SetDefaultPropertyNameInferrer(field => field);
var client = new ElasticClient(settings);
if (!client.IndexExists(index).Exists)
client.CreateIndex(index, i => i
.Analysis(analysis => analysis
.TokenFilters(f => f
.Add("ngram", new Nest.NgramTokenFilter { MinGram = 2, MaxGram = 15 })
)
.Analyzers(a => a
.Add(
"default_index",
new Nest.CustomAnalyzer
{
Tokenizer = "standard",
Filter = new[] { "standard", "lowercase", "asciifolding", "kstem", "ngram" }
}
)
.Add(
"suffix",
new Nest.CustomAnalyzer
{
Tokenizer = "keyword",
Filter = new[] { "standard", "lowercase", "asciifolding", "reverse" }
}
)
)
));
return client;
}