이 글은 기계 번역의 미러 문서이며, 원본 기사로 바로 이동하려면 여기를 클릭해 주세요.

보기: 197688|회답: 35

[출처] [실제 전투]. net/c# NEST를 통한 elasticsearch 호출 [소스 코드 포함]

[링크 복사]
게시됨 2018. 12. 20. 오후 5:32:53 | | | |
ElasticSearch:

ES는 Lucene을 기반으로 한 거의 실시간 검색 플랫폼으로, RESTful을 API 인터페이스로 사용하여 간단한 Get, Post 및 기타 작업을 통해 인덱스와 데이터를 색인화하고 쿼리하는 분산 전체 텍스트 검색 엔진을 제공합니다.


필수 지식:

Centos 7 설치 및 배포 elasticsearch-6.5.2 튜토리얼
https://www.itsvse.com/thread-6173-1-1.html
(출처: Architect_Programmer)
elasticsearch-6.5.2 elasticsearch-head 플러그인을 설치하세요
https://www.itsvse.com/thread-6190-1-1.html
(출처: Architect_Programmer)
elasticsearch-6.5.2에서 elasticsearch-analysis-ik 설치 튜토리얼
https://www.itsvse.com/thread-6191-1-1.html
(출처: Architect_Programmer)

설치:

NEST는 다음 명령어를 통해 nuget을 사용하여 설치할 수 있습니다:



.NET 버전은 최소 4.6 버전을 요구하며, 자세한 내용은 다음과 같습니다:하이퍼링크 로그인이 보입니다.

안녕하세요, 저희는 .NET 4.5 지원에서 .netstandard1.3을 중단했고, net46이 새로운 기준선입니다.

이렇게 한 이유는 netcoreapp2.1 TFM을 도입하고 모든 성능 작업을 클라이언트에 전달하는 데 집중하기 위함이었습니다.

당신의 환경에 대해 말씀해 주실 수 있나요?

.NET 4.5는 2012년에 시작되었고, 2014년에는 4.5.2만 지원되었습니다. 언젠가는 4.5.2를 포기하고 현재와 최신 .NET 버전에 더 집중하는 어려운 결정을 내려야 합니다. 몇 년 전 우리가 포기했던 것처럼. NET 3.5, 이 작업은 쉽지 않습니다.


색인 만들기:

인덱스가 존재하지 않는다면, 다음 방법을 사용하여 인덱스가 생성되는 동시에 매핑을 생성하세요

인터페이스에 put 요청을 보내면 json 데이터는 다음과 같습니다:


뒤로:

{
"인정": 사실입니다.
"shards_acknowledged": 맞아,
"인덱스": "테스트1"
}

아래에 나와 있습니다:



문서 추가:

사실, 데이터베이스의 행과 동등한 데이터를 추가하기 위해 약 163개의 뉴스를 수집하고 총 45개의 기사를 성공적으로 추가했습니다. 아래 그림에 나와 있습니다:



elasticsearch-head 플러그인을 통해 추가된 데이터를 확인하세요.



HTML 코드로 데이터를 수동으로 추가하고, 내용은 다음과 같이 입력하세요:



우리는 HTML 태그가 붙은 데이터를 삽입하여 하이라이트 기능을 테스트합니다. 원본 html과 js 코드를 벗어나지 않으면 xss 공격이 발생할 수 있기 때문입니다.

검색:

소프트웨어를 통해 "man"과 "test"와 같은 키워드를 검색하면 올바른 검색 결과가 나타나고, 게시물의 요청 내용이 표시되어 디버깅에 편리합니다. 다음과 같습니다:



테스트 키워드를 검색하면 기록에 포함된 HTML 코드가 성공적으로 탈출된 것을 확인해 보세요!

소스 코드에는 뉴스 txt 파일이 포함되어 있으며, Winform은 elasticsearch 소스 코드를 호출하여 다운로드합니다:

관광객 여러분, 이 게시물의 숨겨진 내용을 보고 싶으시다면 부탁드립니다회답





이전의:처음 램프에 왔을 때, 패션 디자인 튜토리얼을 모두에게 공유했습니다
다음:CodeIgniter, 간단하고 빠른 PHP MVC 프레임워크
 집주인| 게시됨 2018. 12. 24. 오전 11:03:23 |
네스트로 인덱스 코드를 생성하세요:
모델:

지도 지도 보기: http://ip:9200/test2/_mapping?pretty



게시됨 2021. 12. 28. 오전 10:10:50 |
Elasticsearch.Net.UnexpectedElasticsearchClientException: 현재 JSON 객체(예: {"name":"value")를 'System.' 타입으로 비직렬화할 수 없음 Int64'는 이 타입이 JSON 기본 값(예: 문자열, 숫자, 불리언, 널)을 제대로 직렬 정리해야 하기 때문입니다. 이 오류를 해결하려면 JSON을 JSON 기본 값(예: 문자열, 숫자, 불리언, null)으로 변경하거나, 디직렬라이저라이즈 타입을 정상적으로 바꿀 수 있습니다. .NET 타입(예: 정수와 같은 원시 타입, 컬렉션 타입이 아님)(예: 배열이나 리스트)은 JSON 객체에서 디직렬화할 수 있습니다. 또한 JSON 객체에서 디직렬라이즈하도록 타입에 JsonObjectAttribute를 추가할 수도 있습니다. 경로 "hits.total.value", 1행, 113 위치.


저도 같은 문제를 겪었고, NEST 6.6.0 라이브러리가 Elasticsearch 7.0과 호환되지 않는 것 같습니다. NEST를 7.0.0(현재 알파)으로 업데이트해야 했습니다.


NEST를 업그레이드하면 이 문제가 해결됩니다
게시됨 2019. 7. 22. 오후 3:20:56 |
1121695511 2019-7-18 10:27에 게시됨
회원으로 결제했지만, 이전 신문과 같은 실수로 다운로드했습니다. 아야. 쿼리 오류이기도 합니다

이를 수정하려면, 프로그램은 실행할 수 있지만, elasticsearch 다운로드와는 다른 버전 때문에 발생합니다
게시됨 2018. 12. 21. 오전 8:45:31 |
나쁘지 않네~ 저한테는 전체 텍스트 검색이 문제예요
게시됨 2018. 12. 21. 오후 12:09:32 |
공유해 주셔서 감사합니다. 한번 살펴보겠습니다
게시됨 2019. 5. 12. 오후 5:22:14 |
고마워요, 집주인. 그는 좋은 사람이에요
게시됨 2019. 5. 12. 오후 5:35:00 |
내릴 수가 없어. 이봐. 점수. 교통 체증. 온갖 욕구가 있어요
게시됨 2019. 5. 28. 오후 5:53:48 |
공유해주셔서 감사합니다, 배우고 계시죠!
게시됨 2019. 6. 18. 오후 6:12:40 |
다행히도 시도해 볼 수 있습니다.
게시됨 2019. 6. 19. 오후 5:28:18 |
좋은 사람은 안전한 삶을 살고 있습니다
게시됨 2019. 6. 19. 오후 6:07:29 |
공유해 주셔서 감사합니다. 한번 살펴보겠습니다
면책 조항:
Code Farmer Network에서 발행하는 모든 소프트웨어, 프로그래밍 자료 또는 기사는 학습 및 연구 목적으로만 사용됩니다; 위 내용은 상업적 또는 불법적인 목적으로 사용되지 않으며, 그렇지 않으면 모든 책임이 사용자에게 부담됩니다. 이 사이트의 정보는 인터넷에서 가져온 것이며, 저작권 분쟁은 이 사이트와는 관련이 없습니다. 위 내용은 다운로드 후 24시간 이내에 컴퓨터에서 완전히 삭제해야 합니다. 프로그램이 마음에 드신다면, 진짜 소프트웨어를 지원하고, 등록을 구매하며, 더 나은 진짜 서비스를 받아주세요. 침해가 있을 경우 이메일로 연락해 주시기 바랍니다.

Mail To:help@itsvse.com