Reputation: 165
I am trying to upgrade from MVC6 beta (6.0.0-rc1-final) to latest ASP.NET Core 1.0.0
I managed to upgrade my application using asp.net documentation help.
But now, when I run my application using CTRL+F5, it gives me error for /Views/_ViewImports.cshtml file-
"The type or namespace name 'Identity' does not exist in the namespace 'Microsoft.AspNetCore'"
Below is my global.json-
{
"projects": [ "src", "test" ],
"sdk": {
"version": "1.0.0-preview2-003121"
}
}
package.json
{
"name": "Apex",
"version": "2.4.0",
"devDependencies": {
"gulp": "3.8.11",
"gulp-concat": "2.5.2",
"gulp-cssmin": "0.1.7",
"gulp-uglify": "1.2.0",
"rimraf": "2.2.8",
"gulp-sass": "2.1.1",
"node-sass": "3.4.2"
}
}
appsettings.json
{
"ApplicationInsights": {
"InstrumentationKey": ""
},
"Data": {
"DefaultConnection": {
"ConnectionString": ""
}
},
"Logging": {
"IncludeScopes": false,
"LogLevel": {
"Default": "Verbose",
"System": "Information",
"Microsoft": "Information"
}
}
}
project.json
{
"userSecretsId": "",
"buildOptions": {
"emitEntryPoint": true
},
"dependencies": {
"Microsoft.ApplicationInsights.AspNetCore": "1.0.0",
"Microsoft.AspNetCore.Authentication.Cookies": "1.0.0",
"Microsoft.AspNetCore.Diagnostics": "1.0.0",
"Microsoft.AspNetCore.Diagnostics.EntityFrameworkCore": "1.0.0",
"Microsoft.AspNetCore.Identity": "1.0.0",
"Microsoft.AspNetCore.Identity.EntityFrameworkCore": "1.0.0",
"Microsoft.AspNetCore.Mvc": "1.0.0",
"Microsoft.AspNetCore.Mvc.TagHelpers": "1.0.0",
"Microsoft.AspNetCore.Server.IISIntegration": "1.0.0",
"Microsoft.AspNetCore.Server.Kestrel": "1.0.0",
"Microsoft.AspNetCore.StaticFiles": "1.0.0",
"Microsoft.EntityFrameworkCore": "1.0.0",
"Microsoft.EntityFrameworkCore.SqlServer": "1.0.0",
"Microsoft.Extensions.Configuration.CommandLine": "1.0.0",
"Microsoft.Extensions.Configuration.FileExtensions": "1.0.0",
"Microsoft.Extensions.Configuration.Json": "1.0.0",
"Microsoft.Extensions.Configuration.UserSecrets": "1.0.0",
"Microsoft.Extensions.Logging": "1.0.0",
"Microsoft.Extensions.Logging.Console": "1.0.0",
"Microsoft.Extensions.Logging.Debug": "1.0.0",
"Microsoft.VisualStudio.Web.BrowserLink.Loader": "14.0.0",
"Microsoft.VisualStudio.Web.CodeGenerators.Mvc": "1.0.0-preview2-final"
},
"tools": {
"Microsoft.AspNetCore.Razor.Tools": "1.0.0-preview2-final",
"Microsoft.AspNetCore.Server.IISIntegration.Tools": "1.0.0-preview2-final",
"Microsoft.Extensions.SecretManager.Tools": "1.0.0-preview2-final"
},
"commands": {
"ef": "EntityFramework.Commands",
"web": "Microsoft.AspNetCore.Server.Kestrel"
},
"frameworks": {
"net461": {}
},
"publishOptions": {
"exclude": [
"**.user",
"**.vspscc",
"wwwroot",
"node_modules"
]
},
"scripts": {
"prepublish": [ "npm install", "bower install", "gulp clean", "gulp min" ]
}
}
_ViewImports.cshtml
@using MVC6_Full_Version
@using MVC6_Full_Version.Models
@using MVC6_Full_Version.ViewModels.Account
@using MVC6_Full_Version.ViewModels.Manage
@using Microsoft.AspNetCore.Identity
@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers
@inject Microsoft.ApplicationInsights.Extensibility.TelemetryConfiguration TelemetryConfiguration
If you see my _ViewImports.cshtml
file above, it has Identity namespace.
Please guide me on this how to resolve this runtime error.
My environment is- VS2015 community edition and ASP.NET core1.0 and .NET framework 4.6.1
Thanks in advance.
Upvotes: 2
Views: 10243
Reputation: 20017
Try adding "preserveCompilationContext": true
in your project.json
"buildOptions": {
"emitEntryPoint": true,
"preserveCompilationContext": true
},
See if this helps.
EDIT:
preserveCompilationContext
is required when you are using Razor or any other type of runtime compiling. Without it, runtime compilation of Razor views will fail.
For more information refer to this link.
Upvotes: 4