# My Elastic Search .Net Client is not working?

**URL:** <https://discuss.elastic.co/t/my-elastic-search-net-client-is-not-working/370828>\
**Category:** Elasticsearch\
**Tags:** language-clients\
**Created:** [November 20, 2024, 10:25am UTC](https://discuss.elastic.co/t/my-elastic-search-net-client-is-not-working/370828 "2024-11-20T10:25:01Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![naiqiu.zhao](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/naiqiu.zhao/32/139364_2.png) [@naiqiu.zhao](https://discuss.elastic.co/u/naiqiu.zhao)\
**Post date:** [November 20, 2024, 10:25am UTC](https://discuss.elastic.co/t/my-elastic-search-net-client-is-not-working/370828/1 "2024-11-20T10:25:01Z")

</div>

Code

```auto
using Elastic.Clients.Elasticsearch;
using Elastic.Transport;
using System;
using System.Threading.Tasks;

namespace ESTest
{
    internal class Program
    {
        static void Main(string[] args)
        {

            var respo = CreateIndex();

          // Console.ReadKey();
        }

        public static async Task CreateIndex()
        {
            var settings = new ElasticsearchClientSettings(new Uri("http://192.168.1.53:9200/"))
             .Authentication(new BasicAuthentication("elastic", "vPM5UsWCwR-oI2ZsFe0k"));
            var client = new ElasticsearchClient(settings);
           var resopn= await client.Indices.CreateAsync("7778");
        
        }

    }

   
}

```

Error

```auto
# FailureReason: Unrecoverable/Unexpected BadRequest while attempting PUT on http://192.168.1.53:9200/7778
 - [1] BadRequest: Node: http://192.168.1.53:9200/ Exception: NullReferenceException Took: 00:00:00.0882637
# Audit exception in step 1 BadRequest:
System.NullReferenceException: 未将对象引用设置到对象的实例。
   在 Elastic.Transport.HttpWebRequestInvoker.SetAuthenticationIfNeeded(Endpoint endpoint, RequestData requestData, HttpWebRequest request) 位置 /home/runner/work/elastic-transport-net/elastic-transport-net/src/Elastic.Transport/Components/TransportClient/HttpWebRequestInvoker.cs:行号 424
   在 Elastic.Transport.HttpWebRequestInvoker.CreateHttpWebRequest(Endpoint endpoint, RequestData requestData, PostData postData, Boolean isAsync) 位置 /home/runner/work/elastic-transport-net/elastic-transport-net/src/Elastic.Transport/Components/TransportClient/HttpWebRequestInvoker.cs:行号 264
   在 Elastic.Transport.HttpWebRequestInvoker.<RequestCoreAsync>d__13`1.MoveNext() 位置 /home/runner/work/elastic-transport-net/elastic-transport-net/src/Elastic.Transport/Components/TransportClient/HttpWebRequestInvoker.cs:行号 88
--- 引发异常的上一位置中堆栈跟踪的末尾 ---
   在 System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   在 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   在 Elastic.Transport.RequestPipeline.<CallProductEndpointCoreAsync>d__43`1.MoveNext() 位置 /home/runner/work/elastic-transport-net/elastic-transport-net/src/Elastic.Transport/Components/Pipeline/RequestPipeline.cs:行号 198
--- 引发异常的上一位置中堆栈跟踪的末尾 ---
   在 System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   在 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   在 System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd(Task task)
   在 Elastic.Transport.DistributedTransport`1.<RequestCoreAsync>d__16`1.MoveNext() 位置 /home/runner/work/elastic-transport-net/elastic-transport-net/src/Elastic.Transport/DistributedTransport.cs:行号 161
# Inner Exception: 未将对象引用设置到对象的实例。
System.NullReferenceException: 未将对象引用设置到对象的实例。
   在 Elastic.Transport.HttpWebRequestInvoker.SetAuthenticationIfNeeded(Endpoint endpoint, RequestData requestData, HttpWebRequest request) 位置 /home/runner/work/elastic-transport-net/elastic-transport-net/src/Elastic.Transport/Components/TransportClient/HttpWebRequestInvoker.cs:行号 424
   在 Elastic.Transport.HttpWebRequestInvoker.CreateHttpWebRequest(Endpoint endpoint, RequestData requestData, PostData postData, Boolean isAsync) 位置 /home/runner/work/elastic-transport-net/elastic-transport-net/src/Elastic.Transport/Components/TransportClient/HttpWebRequestInvoker.cs:行号 264
   在 Elastic.Transport.HttpWebRequestInvoker.<RequestCoreAsync>d__13`1.MoveNext() 位置 /home/runner/work/elastic-transport-net/elastic-transport-net/src/Elastic.Transport/Components/TransportClient/HttpWebRequestInvoker.cs:行号 88
--- 引发异常的上一位置中堆栈跟踪的末尾 ---
   在 System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   在 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   在 Elastic.Transport.RequestPipeline.<CallProductEndpointCoreAsync>d__43`1.MoveNext() 位置 /home/runner/work/elastic-transport-net/elastic-transport-net/src/Elastic.Transport/Components/Pipeline/RequestPipeline.cs:行号 198
--- 引发异常的上一位置中堆栈跟踪的末尾 ---
   在 System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   在 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   在 System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd(Task task)
   在 Elastic.Transport.DistributedTransport`1.<RequestCoreAsync>d__16`1.MoveNext() 位置 /home/runner/work/elastic-transport-net/elastic-transport-net/src/Elastic.Transport/DistributedTransport.cs:行号 161
# Exception:
Elastic.Transport.UnexpectedTransportException: 未将对象引用设置到对象的实例。 ---> System.NullReferenceException: 未将对象引用设置到对象的实例。
   在 Elastic.Transport.HttpWebRequestInvoker.SetAuthenticationIfNeeded(Endpoint endpoint, RequestData requestData, HttpWebRequest request) 位置 /home/runner/work/elastic-transport-net/elastic-transport-net/src/Elastic.Transport/Components/TransportClient/HttpWebRequestInvoker.cs:行号 424
   在 Elastic.Transport.HttpWebRequestInvoker.CreateHttpWebRequest(Endpoint endpoint, RequestData requestData, PostData postData, Boolean isAsync) 位置 /home/runner/work/elastic-transport-net/elastic-transport-net/src/Elastic.Transport/Components/TransportClient/HttpWebRequestInvoker.cs:行号 264
   在 Elastic.Transport.HttpWebRequestInvoker.<RequestCoreAsync>d__13`1.MoveNext() 位置 /home/runner/work/elastic-transport-net/elastic-transport-net/src/Elastic.Transport/Components/TransportClient/HttpWebRequestInvoker.cs:行号 88
--- 引发异常的上一位置中堆栈跟踪的末尾 ---
   在 System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   在 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   在 Elastic.Transport.RequestPipeline.<CallProductEndpointCoreAsync>d__43`1.MoveNext() 位置 /home/runner/work/elastic-transport-net/elastic-transport-net/src/Elastic.Transport/Components/Pipeline/RequestPipeline.cs:行号 198
--- 引发异常的上一位置中堆栈跟踪的末尾 ---
   在 System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   在 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   在 System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd(Task task)
   在 Elastic.Transport.DistributedTransport`1.<RequestCoreAsync>d__16`1.MoveNext() 位置 /home/runner/work/elastic-transport-net/elastic-transport-net/src/Elastic.Transport/DistributedTransport.cs:行号 161
   --- 内部异常堆栈跟踪的结尾 ---
   在 Elastic.Transport.DistributedTransport`1.ThrowUnexpectedTransportException[TResponse](Exception killerException, List`1 seenExceptions, Endpoint endpoint, TResponse response, IReadOnlyCollection`1 auditTrail) 位置 /home/runner/work/elastic-transport-net/elastic-transport-net/src/Elastic.Transport/DistributedTransport.cs:行号 283
   在 Elastic.Transport.DistributedTransport`1.<RequestCoreAsync>d__16`1.MoveNext() 位置 /home/runner/work/elastic-transport-net/elastic-transport-net/src/Elastic.Transport/DistributedTransport.cs:行号 176
--- 引发异常的上一位置中堆栈跟踪的末尾 ---
   在 System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   在 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   在 System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd(Task task)
   在 Elastic.Clients.Elasticsearch.ElasticsearchClient.<>c __DisplayClass865_0`3.<<DoRequestCoreAsync>g__ SendRequestWithProductCheckCore|2>d.MoveNext() 位置 /_/src/Elastic.Clients.Elasticsearch/_Shared/Client/ElasticsearchClient.cs:行号 220
--- 引发异常的上一位置中堆栈跟踪的末尾 ---
   在 System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   在 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   在 System.Threading.Tasks.ValueTask`1.get_Result()
   在 System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable`1.ConfiguredValueTaskAwaiter.GetResult()
   在 Elastic.Clients.Elasticsearch.ElasticsearchClient.<>c __DisplayClass865_0`3.<<DoRequestCoreAsync>g__ SendRequestWithProductCheck|1>d.MoveNext() 位置 /_/src/Elastic.Clients.Elasticsearch/_Shared/Client/ElasticsearchClient.cs:行号 190
--- 引发异常的上一位置中堆栈跟踪的末尾 ---
   在 System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   在 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   在 System.Runtime.CompilerServices.TaskAwaiter`1.GetResult()
   在 ESTest.Program.<CreateIndex>d__1.MoveNext() 位置 C:\Users\Admin\source\repos\ESTest\ESTest\Program.cs:行号 27

```

elasticsearch.yml

```auto
# ======================== Elasticsearch Configuration =========================

cluster.name: aicss

node.name: node-1

path.data: /var/lib/elasticsearch

path.logs: /var/log/elasticsearch

network.host: 0.0.0.0

xpack.security.enabled: true

xpack.security.enrollment.enabled: true

xpack.security.http.ssl:
  enabled: false
  keystore.path: certs/http.p12

xpack.security.transport.ssl:
  enabled: true
  verification_mode: certificate
  keystore.path: certs/transport.p12
  truststore.path: certs/transport.p12

cluster.initial_master_nodes: ["ES01"]
http.host: 0.0.0.0

```

---

<div class="post-metadata">

**Author:** ![ashishtiwari1993](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/ashishtiwari1993/32/135241_2.png) [@ashishtiwari1993](https://discuss.elastic.co/u/ashishtiwari1993)\
**Post date:** [November 21, 2024, 6:38am UTC](https://discuss.elastic.co/t/my-elastic-search-net-client-is-not-working/370828/2 "2024-11-21T06:38:18Z")

</div>

Hi @naiqiu.zhao, May I know what is the Elastic and Elasticsearch .NET client version you're using?

---

<div class="post-metadata">

**Author:** ![flobernd](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/flobernd/32/124877_2.png) [@flobernd](https://discuss.elastic.co/u/flobernd)\
**Post date:** [November 21, 2024, 11:18am UTC](https://discuss.elastic.co/t/my-elastic-search-net-client-is-not-working/370828/3 "2024-11-21T11:18:47Z")

</div>

I'm unable to reproduce this with the latest version of the client.

From looking at your Elasticsearch config, it seems like you have `security` and `SSL` enabled, but in your .NET code you are using a `http://` url. Could you please try to use `https` instead or alternatively run the local Elasticsearch instance without SSL?

---

<div class="post-metadata">

**Author:** ![naiqiu.zhao](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/naiqiu.zhao/32/139364_2.png) [@naiqiu.zhao](https://discuss.elastic.co/u/naiqiu.zhao)\
**Post date:** [November 22, 2024, 1:59am UTC](https://discuss.elastic.co/t/my-elastic-search-net-client-is-not-working/370828/4 "2024-11-22T01:59:18Z")

</div>

Elastic Version 8.16;.net farmwork 4.7.2;nuget version 8.16.

---

<div class="post-metadata">

**Author:** ![naiqiu.zhao](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/naiqiu.zhao/32/139364_2.png) [@naiqiu.zhao](https://discuss.elastic.co/u/naiqiu.zhao)\
**Post date:** [November 22, 2024, 2:01am UTC](https://discuss.elastic.co/t/my-elastic-search-net-client-is-not-working/370828/5 "2024-11-22T02:01:50Z")

</div>

I found the cause of this problem.

I use .net 8 is working fine.I use .net faremwork4.7.2 is not working.

---

<div class="post-metadata">

**Author:** ![naiqiu.zhao](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/naiqiu.zhao/32/139364_2.png) [@naiqiu.zhao](https://discuss.elastic.co/u/naiqiu.zhao)\
**Post date:** [November 22, 2024, 2:07am UTC](https://discuss.elastic.co/t/my-elastic-search-net-client-is-not-working/370828/6 "2024-11-22T02:07:59Z")

</div>

var settings = new ElasticsearchClientSettings(new Uri(App.GetConfig("Elasticsearch:Uri")))  
.Authentication(new BasicAuthentication(App.GetConfig("Elasticsearch:UserName"), App.GetConfig("Elasticsearch:Password")))  
**.ServerCertificateValidationCallback(CertificateValidations.AllowAll)**  
.CertificateFingerprint(App.GetConfig("Elasticsearch:Fingerprint"));

---

<div class="post-metadata">

**Author:** ![flobernd](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/flobernd/32/124877_2.png) [@flobernd](https://discuss.elastic.co/u/flobernd)\
**Post date:** [November 29, 2024, 3:11pm UTC](https://discuss.elastic.co/t/my-elastic-search-net-client-is-not-working/370828/7 "2024-11-29T15:11:48Z")

</div>

This is probably due to the fact that the ES server uses a TLS version that is not supported by NET Framework.

Please be aware that your workaround completely disables certificate validation - which opens an attack vector for MITM attacks, if used in production.

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/elastic/original/3X/1/a/1ac57faf039f6b580b3f104ef42a2a89e41014de.png) [@system](https://discuss.elastic.co/u/system)\
**Post date:** [December 27, 2024, 3:12pm UTC](https://discuss.elastic.co/t/my-elastic-search-net-client-is-not-working/370828/8 "2024-12-27T15:12:50Z")

</div>

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.
