Tengo una función de C# que invoca una función de Javascript, esta es la función de C#:
await _jsRuntime.InvokeVoidAsync("setMediaUsingStreaming", type, dotnetImageStream);Y esta es la función Javascript:
async function setMediaUsingStreaming(fileType, fileStream) { try { const arrayBuffer = await fileStream.arrayBuffer(); const blob = new Blob([arrayBuffer]); const url = URL.createObjectURL(blob); var newHTMLElement; var fileHTMLElement = document.getElementById('fileDisplay'); if (fileType == "image") { newHTMLElement = document.createElement('img'); } else { newHTMLElement = document.createElement('video'); var attribute = document.createAttribute('controls'); newHTMLElement.setAttributeNode(attribute); } fileHTMLElement.appendChild(newHTMLElement); newHTMLElement.src = url; } catch (Exception) { console.log(Exception) } }Cuando la función de C# está invocando la función de Javascript, recibo este error:
blazor.webassembly.js:1 No detectado (en promesa) Error: Microsoft.JSInterop.JSException: no se pueden establecer las propiedades de nulo (estableciendo 'src') TypeError: no se pueden establecer las propiedades de nulo (estableciendo 'src')
Lo raro es que recibo este error cuando ejecuto la aplicación en modo de publicación (sin depurador) pero funciona perfectamente en modo de depuración. La captura de la función javascript no se activa cuando recibo este error, parece que es el método C# el que lo está arrojando.
Sé lo que dice el error, que la variable url es nula, pero no entiendo por qué es nula y por qué funciona en modo de depuración.
Tienes alguna idea ?