lachis lachis - 1 month ago 49
ASP.NET (C#) Question

Using Webpack with ASP.NET Core 1.1

I'm trying to use Webpack with my ASP.NET Core 1.1 app. I'm using the .NET Core preview for 1.1 that was just released, though I only just upgraded to 1.1 and was using 1.0 previously, I was still having the same issue.

Following: https://github.com/xabikos/aspnet-webpack, I've added

Webpack: 3.0.0
to my
project.json
file and ran the command
dotnet restore
, however, when I try and register the service ie
services.AddWebpack()
I get the following error:

error CS1061: 'IServiceCollection' does not contain a definition for'AddWebpack' and no extension method 'AddWebpack' accepting a first argument of type 'IServiceCollection' could be found (are you missing a using directive o assembly reference?)


project.json

{
"version": "1.0.0-*",
"dependencies": {
"Microsoft.AspNetCore.Diagnostics": "1.0.0",
"Microsoft.AspNetCore.Mvc": "1.0.1",
"Microsoft.AspNetCore.Razor.Tools": {
"version": "1.0.0-preview2-final",
"type": "build"
},
"Microsoft.AspNet.SignalR.Client": "2.2.1",
"Microsoft.AspNetCore.SignalR.Server": "0.1.0-rtm-21431",
"Microsoft.AspNet.SignalR.SystemWeb": "2.2.1",
"Microsoft.AspNet.SignalR.JS": "2.2.1",
"Microsoft.AspNetCore.WebSockets.Server": "0.1.0-rc2-final",
"System.Xml.XmlSerializer": "4.0.11",
"React.AspNet": "3.0.0-rc1",
"Microsoft.AspNetCore.Routing": "1.0.1",
"Microsoft.AspNetCore.Server.IISIntegration": "1.0.0",
"Microsoft.AspNetCore.Server.Kestrel": "1.0.1",
"Microsoft.AspNetCore.StaticFiles": "1.0.0",
"Microsoft.Extensions.Configuration.EnvironmentVariables": "1.0.0",
"Microsoft.Extensions.Configuration.Json": "1.0.0",
"Microsoft.Extensions.Configuration.CommandLine": "1.0.0",
"Microsoft.Extensions.Logging": "1.0.0",
"Microsoft.Extensions.Logging.Console": "1.0.0",
"Microsoft.Extensions.Logging.Debug": "1.0.0",
"Microsoft.Extensions.Options.ConfigurationExtensions": "1.0.0",
"Microsoft.VisualStudio.Web.BrowserLink.Loader": "14.0.0",
"Microsoft.Owin.Host.SystemWeb": "3.0.1",
"Microsoft.Owin": "3.0.1",
"Microsoft.Owin.Security": "3.0.1",
"Webpack": "3.0.0"
},
"tools": {
//"BundlerMinifier.Core": "2.0.238",
//"Microsoft.AspNetCore.Razor.Tools": "1.0.0-preview2-final",
"Microsoft.AspNetCore.Server.IISIntegration.Tools": "1.0.0-preview2-final"
},
"frameworks": {
"netcoreapp1.1": {
"dependencies": {
"Microsoft.NETCore.App": {
"version": "1.1.0-preview1-001100-00",
"type": "platform"
}
},
"imports": [
"net451",
"dnxcore50"
]
}
},
"buildOptions": {
"emitEntryPoint": true,
"preserveCompilationContext": true
,
"runtimeOptions": {
"configProperties": {
"System.GC.Server": true
}
},
"publishOptions": {
"include": [
"wwwroot",
"**/*.cshtml",
"appsettings.json",
"web.config"
]
},
"scripts": {
"precompile": [ "dotnet bundle" ],
"prepublish": [ "bower install" ],
"postpublish": [ "dotnet publish-iis --publish-folder %publish:OutputPath% --framework %publish:FullTargetFramework%" ]
},
"tooling": {
"defaultNamespace": "Rebellion"
}
}


startup.cs

public void ConfigureServices(IServiceCollection services)
{
// Add framework services.
services.AddMvc();
services.AddSignalR();
services.AddWebpack();
}


As far as i can tell this should work and I dont know what I'm missing. I have a feeling my
project.json
is screwy.

Answer

If I had to guess, I'd say you haven't got a using Webpack; at the top of your Startup.cs file. If you're using Visual Studio it should offer to add it for you if you right click on the error and click "Quick Actions and Refactorings..." or press Ctrl+.