I want to be able to interpret an Edge performance profiler report for my Blazor WebAssembly app. To do this, I need to avoid the issue described in this question whereby all functions are renamed to names like "wasm-function[12345]". This answer aims to explain a means of doing this by setting the properties WasmEmitSymbolMap and/or WasmNativeStrip. However, it does not provide sufficient detail on how to get these properties to actually take effect. For me, they do not make any difference. The Edge performance profiler continues to name the functions according to the "wasm-function[12345]" pattern no matter what I try, and I cannot find the file "dotnet.js.symbols" - that supposedly ought to be created somewhere, since I specified WasmEmitSymbolMap - at all.
What I have tried
I tried adding these lines within a PropertyGroup in the "client" project's csproj file:
<WasmEmitSymbolMap>true</WasmEmitSymbolMap><WasmNativeStrip>false</WasmNativeStrip>I tried adding those same lines within a PropertyGroup in the "server" project's csproj file, too, because the answer doesn't say which file they belong in.
Because the answer warns that one of the two properties "can only be used in AOT compiled mode", I added the following line alongside the aforementioned ones in both csproj files:
<RunAOTCompilation>true</RunAOTCompilation>I also tried adding the following line in both files:
<RunAOTCompilationAfterBuild>true</RunAOTCompilationAfterBuild>At various times I tried force-refreshing (shift+F5) the page in my application, just in case something was out of date.
None of the steps 1, 2, 3 or 5 made a difference. As to step 4, I do not know whether this change would have fixed the problem or not, because it made the build take such a long time that I eventually gave up and cancelled it.