The type or namespace IAppBuilder could not be found(missing using a directive pr an assembly reference)
I am working on an Asp.Net MVC 4 Application in which I am using SignalR 2.0.1 and I Mapped it using Owin Startup class and it worked fine at first.
All of a sudden when I tried to rebuild my app it said that the type are namespace IAppbuilder
could not be found.
Following is my start up class
using Microsoft.Owin;
using Owin;
using WhiteBoardApp;
namespace WhiteBoardApp
{
public class Startup
{
public void Configuration(IAppBuilder app)
{
app.MapSignalR();
}
}
}
I have installed Owin
package too, and for some reasons I could not find Owin Startup class so I just added a normal class and included all the references that are needed.
May I know where I am making a mistake
Try to use Package Manage Console and do
Update-Package Owin -Reinstall
I was having similar issue. But instead Owin, problem was causing Microsoft.Owin, obviously
Update-Package Owin -Reinstall
Didn't work, neither did Update-Package Owin
BUT
Install-Package Microsoft.Owin
did work fine for me, thanks.
The IAppBuilder interface is found under Owin package. Just add a reference in your class file:
using Owin;
And rebuild. Your project will pick this up.
I have no idea why VS didn't pick this up, but it didn't. Once I added this reference to my project, then everything fell into place.
I encountered the same problem while building my project. Here are the steps that helped fix my problem:
- Go to
Solution Explorer
and look for your project - Under your project, expand the
References
; You should see warnings on the problematic reference - Right click
References
and openManage NuGet Packages
- Search the name of problematic reference i.e.
Microsoft.Owin
; After loading it shows that it is already installed (It is, but it installed incorrectly. Checking the properties > version at step 2 shows0.0.0.0
) - Check
Force uninstall, even if there are dependencies on it
- Uninstall
- Install
- Build and run the project
Problems
Cannot install
Microsoft.Web.Infrastructure
because it already exists in the packages folder. Rolling back...
- Go to your project folder and look for packages
- Find the problematic package i.e.
Microsoft.Web.Infrastructure
- Delete the folder
- Resume from step 7
Alternatives
Here are the alternatives I've read about to fix this kind of problem.
- Clean and Rebuild Project / Solution
- Restart Visual Studio
- Restart PC
Good luck.