Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Blazor ora supporta l'interoperabilità matrice-byte ottimizzata, che evita la codifica e la decodifica matrice-byte in Base64 e facilita un processo di interoperabilità più efficiente. Questo vale sia per Server Blazor che WebAssembly Blazor.
ASP.NET Core 6.0
function receivesByteArray(data) {
// Previously, data was a Base64-encoded string representing the byte array.
}
function receivesByteArray(data) {
// Data is a Uint8Array (no longer requires processing the Base64 encoding).
}
Questa modifica è stata apportata per creare un meccanismo di interoperabilità più efficiente per le matrici di byte.
Si consideri questa interoperabilità .NET, in cui si effettua una chiamata in JavaScript passando una matrice di byte:
var bytes = new byte[] { 1, 5, 7 };
await _jsRuntime.InvokeVoidAsync("receivesByteArray", bytes);
Nell'esempio di codice precedente si considererà il parametro in ingresso in JavaScript come matrice di byte anziché una stringa con codifica Base64.
Se .NET prevede byte[]
, JavaScript deve fornire un oggetto Uint8Array
. È comunque possibile fornire una matrice con codifica Base64 usando btoa
, ma meno efficiente.
Ad esempio, se si dispone del codice seguente, è necessario fornire un oggetto Uint8Array
da JavaScript non codificato in Base64:
var bytes = await _jsRuntime.InvokeAsync<byte[]>("someJSMethodReturningAByteArray");
Feedback su .NET
.NET è un progetto di open source. Selezionare un collegamento per fornire feedback: