Giorgi / EFCore.Visualizer

Entity Framework Core queries debugger visualizer.
https://marketplace.visualstudio.com/items?itemName=GiorgiDalakishvili.EFCoreVisualizer
GNU General Public License v3.0
450 stars 11 forks source link

IQueryableObjectSource not found exception #30

Closed otryshko closed 7 months ago

otryshko commented 7 months ago

image

ErikEJ commented 7 months ago

Do you have VS 17.9?

Giorgi commented 7 months ago

The IQueryableObjectSource.dll is included in the VSIX and should be available in the following folder:

C:\Users\voffka\AppData\Local\Microsoft\VisualStudio\17.0_e12c492d\Extensions\5kiuggqj.gub\netcoreapp

Can you check if it's there?

otryshko commented 7 months ago

Yes, 17.9.1.

Yes, the file is in the folder which is on screenshot so I'm not sure what is going on. When I look at the dll with dotPeek, it seems that one reference does not work, but it could be a false positive

image

Giorgi commented 7 months ago

Can you run Procmon and see if the DLL is accessed or not?

Giorgi commented 7 months ago

This is what I get when I run the visualizer:

image

otryshko commented 7 months ago

No, procmon doesn't capture any attempts to load IQueryableObjectSource

FWIW, getting "System.MissingMethodException thrown when loading the VisualizerAssemblyLoadContext. Message: Cannot dynamically create an instance of type 'Microsoft.VisualStudio.NetCoreAssemblyResolution.VisualizerAssemblyLoadContext'. Reason: No parameterless constructor defined." in the debugger output

Also this VS Community Edition running as an admin

Giorgi commented 7 months ago

@otryshko I have no idea why VS doesn't load the IQueryableObjectSource.dll but the error message you see is the same as the one in #28.

Can you post your steps to reproduce at https://developercommunity.visualstudio.com/t/SystemMissingMethodException-thrown-whe/10612094 ?

ErikEJ commented 7 months ago

Can you share a repro project?

otryshko commented 7 months ago

Figured it out; @Giorgi you were correct that it's related to the access denied to the extension folder (dll/Resources). The project is the asp.net core app running under the IIS AppPool identity. Once I granted the identity account access to the folder, it started to work.

Not sure if it's possible to check for it in advance/show better error message.

Giorgi commented 7 months ago

Nice to hear that it's working now! I'm also not sure if it's possible to detect that but as the issue is now solved for you I'll close this issue.