asp.net-core – 对project.json中的依赖项感到困惑
在project.json文件中我们有一个依赖项部分,然后我们还有一个框架部分,在每个框架下可以有更多的依赖项.
我很困惑为什么有时依赖关系需要进入框架部分,而其他时候需要进入主依赖关系部分? 例如,在我的几个项目中,我在dnxcore50下有依赖项,但是当我从nuget升级它们时,它将升级版本放在主依赖项部分中,并在框架部分下留下旧版本的较低版本. 一般来说,我发现很容易出错并在VS 2015中为一个或另一个框架获得奇怪的依赖解析错误,并且很难弄清楚导致错误的原因.我有时会在一个项目中添加一个依赖项,并在另一个项目中导致错误,在链中的多个包中找到类型或者解决基本基本类型的问题. 似乎VS 2015模板可能会将它们放在不同的地方与使用nuget添加引用时,或者因为我使用的是beta5,VS中的工具有点不同步. 是否有任何指导何时将依赖项放在主依赖项部分和特定于框架的部分下? 解决方法
您可以执行特定于框架的依赖项的原因是某些程序包不支持所有框架.
最常见的情况是不支持CoreCLR的NuGet包(尚未).有些人更喜欢在该框架上使用替代品,而不是不支持它.因此,在桌面CLR(dnx451)上,它们使用一个NuGet包,而在CoreCLR上,它们使用另一个. 一个具体的例子是在dnu.在桌面CLR上运行时,它使用System.Net.Http.但是,在CoreCLR上,它使用Microsoft.Net.Http.Client:https://github.com/aspnet/dnx/blob/dev/src/Microsoft.Framework.PackageManager/project.json#L29 您可能还会在上面的文件中注意到我们使用依赖项和frameworkAssemblies.这是您使用不同目标的不同包的另一个原因. frameworkAssemblies来自GAC,它只适用于桌面CLR. 因此,规则是:当您拥有将由程序包支持的所有框架使用的包时,使用顶级依赖项属性. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- 经典ASP和UTF-8
- asp.net – Facebook API – 签名请求无效. (签名无效.)
- asp.net-mvc – 在ajax调用中ASP.NET MVC错误的url
- asp.net-mvc – 关于使用重写的AuthorizeAttribute,线程安全
- asp.net-mvc – ASP.NET Web API – Windows窗体应用程序中
- asp.net-mvc – 如何检查是否为浏览器启用了cookie
- asp.net中让Repeater和GridView支持DataPager分页
- asp.net-mvc – ASP.NET MVC路由中未传递的参数值
- 在ASP.NET登录控件页面加载上设置焦点到文本框
- asp.net-mvc-3 – @ Html.ActionLink和@ Html.DisplayFor同
- asp.net – 跨虚拟目录的表单身份验证
- asp.net-mvc – 在MVC命令,优先级和功能问题中授
- 使用asp.net用户控件时我在哪里放JavaScript?
- asp.net-mvc – .NET MVC / Entity Framework应用
- 在ASP.NET身份验证系统中合并OAuth帐户
- 从头编写 asp.net core 2.0 web api 基础框架 (1
- ASP.Net:动态创建的下拉列表和数据源
- 我可以创建一个不回发的ASP.NET ImageButton吗?
- asp.net-mvc – 建立与SQL Server的连接时发生网
- asp.net-3.5 – 如何在用户控件上获取文本框的值