在弹性搜索新,我试图做更新操作与elasticsearch,但为此,当我试图筛选和选择特定的代码,我得到的执行和例外情况是:Elasticsearch在做更新操作时,选择特定的索引获取异常
类型的异常 'ElasticsearchCRUD.ElasticsearchCrudException' 发生ElasticsearchCRUD.dll但在用户代码中没有处理, 其他信息:ElasticSearchContextGet:HttpStatusCode.BadRequestNo处理程序找到的URI [// skillwithlistofdetailss/skillwithlistofdetails/1]和方法[GET]
和我的方法是如下:
public void UpdateSkill(long updateId, string updateName, string updateDescription, List<SkillDetail> updateSkillDetailsList)
{
using (var context = new ElasticsearchContext(ConnectionString, _elasticSearchMappingResolver))
{
//var addressItem = _elasticsearchContext.SearchById<SkillWithListOfDetails>(updateId);
//var entityAddress = _entityFrameworkContext.Address.First(t => t.Id == addressItem.Id);
try
{
var skill = context.GetDocument<SkillWithListOfDetails>(updateId);
skill.Updated = DateTime.UtcNow;
skill.Name = updateName;
skill.Description = updateDescription;
skill.SkillDetails = updateSkillDetailsList;
foreach (var item in skill.SkillDetails)
{
item.Updated = DateTime.UtcNow;
}
context.AddUpdateDocument(skill, skill.Id);
context.SaveChanges();
}
catch(Exception e)
{
throw e;
}
}
}
,我在这行代码得到异常: -
变种技能= context.GetDocument(updateId);
错误的这部分是对我有意思: [// skillwithlistofdetailss/skillwithlistofdetails/1] 你指定你随时随地指数以某种方式在这段代码之前(默认索引)?此外,URI具有技能列表的事实有两个“s”。那是故意的吗? – Miek
是的,我做到了这一点....通过这段代码,我可以得到索引值的意义GET http:// localhost:9200/skillwithlistofdetailss/skillwithlistofdetails/_search – karan
您是否可以编辑问题以提供索引结构为我们? – Miek