[英]Error after updating dnvm to 1.0.0-rc1-final
将dnvm从beta8
更新到1.0.0-rc1-final
我在Startup.cs
遇到错误:
public void ConfigureServices(IServiceCollection services)
{
services.AddMvc(); <======= "iservicecollection does not contain a definition for add mvc(error)"
services.AddTransient<IRepository, MongoRepository>();
}
我的project.json:
{
"packExclude": "*.cmd",
"webroot": "wwwroot",
"version": "1.0.0-*",
"dependencies": {
"Kestrel": "1.0.0-*",
"Microsoft.AspNet.Diagnostics": "1.0.0-*",
"Microsoft.AspNet.Diagnostics.Entity": "7.0.0-*",
"Microsoft.AspNet.Hosting": "1.0.0-*",
"Microsoft.AspNet.Mvc": "6.0.0-*",
"Microsoft.AspNet.Server.IIS": "1.0.0-*",
"Microsoft.AspNet.Server.Kestrel": "1.0.0-*",
"Microsoft.AspNet.Server.WebListener": "1.0.0-*",
"Microsoft.AspNet.StaticFiles": "1.0.0-*",
"Microsoft.Framework.CodeGenerators.Mvc": "1.0.0-*",
"Microsoft.Framework.ConfigurationModel.Json": "1.0.0-*",
"Microsoft.Framework.Logging": "1.0.0-*",
"Microsoft.Framework.Logging.Console": "1.0.0-*",
"Microsoft.VisualStudio.Web.BrowserLink.Loader": "14.0.0-*",
"Microsoft.Net.Http": "2.2.22",
"RestSharp": "105.2.3",
"mongocsharpdriver": "2.1.0"
},
"commands": {
"web": "Microsoft.AspNet.Hosting --server Microsoft.AspNet.Server.WebListener --server.urls http://localhost:5001",
"kestrel": "Microsoft.AspNet.Hosting --server Microsoft.AspNet.Server.Kestrel --server.urls http://localhost:5505",
"gen": "Microsoft.Framework.CodeGeneration",
"ef": "EntityFramework.Commands"
},
"frameworks": {
"dnx451": {
"frameworkAssemblies": {
"System.Drawing": "4.0.0.0",
"System.Drawing.Design": "4.0.0.0"
}
}
},
"exclude": [
"wwwroot",
"node_modules",
"bower_components"
],
"bundleExclude": [
"node_modules",
"bower_components",
"**.kproj",
"**.user",
"**.vspscc"
]
}
我做错了什么? 谢谢。 如果我只是在评论行:
services.AddMvc();
我遇到了此错误: http : //clip2net.com/clip/m446898/72b2d-clip-21kb.png?nocache=1
Microsoft.Framework
库现在是Microsoft.Extensions
。
例如, Microsoft.Framework.CodeGenerators.Mvc
现在是Microsoft.Extensions.CodeGenerators.Mvc
我希望这有帮助。
接下来,进一步扩展乔尔的答案:
我刚遇到这个问题。
在命令提示符下,我运行了dnvm upgrade
以更新我的DNX。
注意 :运行Visual Studio时,请确保其已关闭。 我把它打开了,在我做完下面的事情之后,它就无法工作了。 我有一个IApplicationBuilder exists in both Microsoft.AspNet.Http.Abstractions and Microsoft.AspNet.Http
因为它IApplicationBuilder exists in both Microsoft.AspNet.Http.Abstractions and Microsoft.AspNet.Http
错误中。 因此,我最终重新启动了PC,然后一切正常。 因此,也许重新启动计算机,然后执行以下操作。
全部切换到rc1-final
版本。
我将global.json
更改为:
{
"projects": [ "src" ],
"sdk": {
"version": "1.0.0-rc1-final"
}
}
我的project.json
依赖项部分如下所示:
"dependencies": {
"Microsoft.AspNet.Server.IIS": "1.0.0-*",
"Microsoft.AspNet.Mvc": "6.0.0-rc1-final",
"Microsoft.AspNet.Mvc.TagHelpers": "6.0.0-rc1-final",
"Microsoft.Extensions.DependencyInjection": "1.0.0-rc1-final"
},
注意Microsoft.Extensions.DependencyInjection
,而不是Microsoft.Framework
右键单击“参考”,然后选择“恢复软件包”。 在更改project.json后执行此操作。
然后在我的Startup.cs
文件中,将引用从Microsoft.Framework
更改为Microsoft.Extensions
:
using Microsoft.AspNet.Builder;
using Microsoft.Extensions.DependencyInjection;
public class Startup
{
public void ConfigureServices(IServiceCollection services)
{
services.AddMvc();
}
public void Configure(IApplicationBuilder app)
{
app.UseMvc();
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.