This is standard behavior for any .net project in Visual Studio. The IDE uses referenced assemblies to build IntelliSense data. That's why you need to add the reference to develop plugins.
From the other hand, nopCommerce ASP.NET application has System.Web.Mvc loaded to the memory. You plugin's assembly is loaded to the same application. That's why you don't need to bring System.Web.Mvc.dll together with your plugin.
This is standard behavior for any .net project in Visual Studio. The IDE uses referenced assemblies to build IntelliSense data. That's why you need to add the reference to develop plugins.
From the other hand, nopCommerce ASP.NET application has System.Web.Mvc loaded to the memory. You plugin's assembly is loaded to the same application. That's why you don't need to bring System.Web.Mvc.dll together with your plugin.
Well... So what is the solution for our problem then?
Add System.Web.Mvc via NuGet to your plugin project and make sure it is not copied to the build output. The only assemblies which has to be copied to build output are plugin assembly and 3rd party assemblies which are not part of nopCommerce.
Add System.Web.Mvc via NuGet to your plugin project and make sure it is not copied to the build output. The only assemblies which has to be copied to build output are plugin assembly and 3rd party assemblies which are not part of nopCommerce.
The problem is that I have tried that without success. I also tried this solution that did not work either:
Add System.Web.Mvc via NuGet to your plugin project and make sure it is not copied to the build output. The only assemblies which has to be copied to build output are plugin assembly and 3rd party assemblies which are not part of nopCommerce.
dear stellaobosse, the plugin manufacturers are all very jealous, and retain the trip & truck. It makes me puzzled as nop comunity is very present, despite nop is an open source product and on paper and sharing best practices should be the norm!