在完整的net45框架上与Asp.Net Core RC1一起使用.从Asp.NET Core rc1迁移到rc2我遇到了一个障碍,我不知道如何修复.
该应用程序是一个使用EF6,Autofac,Kendo.MVC的ASP.NET核心应用程序,它需要在完整的.Net 4.6框架上运行,因为有使用WCF的参考库.
在从rc1迁移到rc2时,我首先更新NuGet.config源以指向https://www.myget.org/F/aspnetcirelease/api/v3/index.json然后我对project.json进行以下更改
>从最顶层的节点中删除“版本”
>将以下属性添加到complationoptions对象:“debugType”:“portable”
>依赖项:将AspNet更改为AspNetCore
>依赖关系:将所有rc1-final更改为*
>检查MVC和MVC标记助手是否已从6.0重命名为1.0
>删除Application Insights的所有依赖项
>删除Microsoft.AspNet.Tooling.Razor的所有依赖项
>向“Microsoft.NETCore.App”添加依赖项:{“type”:“platform”,“version”:“1.0.0- *”}
>添加新内容对象:“content”:[“wwwroot”,“Views”,“web.config”,“appsettings.json”]
>更新所有使用语句以引用AspNetCore.*而不是AspNet.*
然后我用以下内容替换frameworks对象:
"frameworks": { "netcoreapp1.0": { "imports": [ "net45" ] } }
error: Package Kendo.Mvc 2016.1.412 is not compatible with netcoreapp1.0 (.NETCoreApp,Version=v1.0). Package Kendo.Mvc 2016.1.412 supports: error: - dnx451 (DNX,Version=v4.5.1) error: - dnxcore50 (DNxcore,Version=v5.0) error: One or more packages are incompatible with .NETCoreApp,Version=v1.0. info : Committing restore... Errors in project.json Package Kendo.Mvc 2016.1.412 is not compatible with netcoreapp1.0 (.NETCoreApp,Version=v1.0). Package Kendo.Mvc 2016.1.412 supports: - dnx451 (DNX,Version=v4.5.1) - dnxcore50 (DNxcore,Version=v5.0) One or more packages are incompatible with .NETCoreApp,Version=v1.0.
因此,Kendo.MVC需要引用net45或net451而不是dnx451,但由于这是来自NuGet提要,我无法改变这一点.
解决方法
构架
您的框架因.NET Core (netcoreapp
) is not compatible with .NET Framework (net
)而失败,因此您无法导入net45.你的错误说Kendo.Mvc与dnx451和dnxcore50兼容;导入其中一个而不是.然后为Kendo.Mvc所依赖的某些软件包添加便携式导入(如果不这样,您将看到构建错误,告诉您这样做.)
"frameworks": { "netcoreapp1.0": { "imports": [ "dnxcore50","portable-net45+win8+wp8" ] } }
现在您的应用将恢复并构建.但它还没有运行.
依赖
更改您对Microsoft.NETCore.App的依赖关系不要拥有"type" : "platform"
.否则您的应用程序将无法独立运行,因为NuGet将禁止该软件包的资产.
"dependencies" : { // others omitted for clarity "Microsoft.NETCore.App": "1.0.0-*","Kendo.Mvc": "*" }
运行时间
添加runtimes
部分;我们现在在project.json中指定它,而不是依赖于dnvm.
"runtimes": { "win8-x64": {} }
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。