Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

200
Visualizações
Cómo recibir un objeto JavaScript en C# cuando se usa Webview2 sin usar JSON

Estoy jugando con Webview2 e intenté pasar el objeto JavaScript al método C# del objeto host registrado, pero no sé cómo recuperar su contenido.

 public object[] TestCall(string arg1, object arg2) { // arg2.item1 // This don't work // Including arg2 in array will return it back to JavaScript, so it is stored some where return new List<object>() { "item1", "item2", 123, false, arg1, arg2 }.ToArray(); } // await window.chrome.webview.hostObjects.dotNetObject.TestCall("Hello world", { item1: "value1", item2: 1234 });

Traté de buscar muestras oficiales de C#, pero ninguna demostró cómo pasar un objeto JavaScript al método de HostObject.

Había solucionado esto usando JSON para intercambiar datos entre C# y JavaScript.

Sin embargo, todavía estoy desconcertado.

Mi pregunta:

¿Cómo paso cualquier objeto de JavaScript al método de HostObject sin convertirlo en JSON?

¿Hay alguna forma de obtener contenido del objeto JS que recibí en arg2 ?

lo que probé

  • System.Runtime.InteropServices.Marshal.GetIDispatchForObject(arg2); para obtener un puntero.

    Pero no se que hacer con el, ya que no tengo conocimientos de COM ni de IDispatch.

  • Intenté transmitirlo a ExpandoObject , Invalid cast

  • Intenté convertirlo en dynamic , exitoso, pero ((dynamic)arg2).item1 lanza NotImplementedException

about 4 years ago · Juan Pablo Isaza
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda