【发布时间】:2015-03-21 18:55:11
【问题描述】:
新的 ASP.NET 5 (vNext) 做了一些很棒的事情,例如集成 Bower、Grunt 和其他客户端 Web 开发工具 into the project。
但是,我开始意识到(在制作并完成了许多此类项目之后),所有这些似乎都仅限于可以针对新的“云”或“跨平台”(KRE-CLR) 的项目仅堆栈,而不是常规的 .NET 堆栈。与定位这个新堆栈一样好,这严重限制了此时可以定位的内容(基本上您现在引用的任何 dll / 项目都不是 ASP.NET 5 类库,所以它不能被引用,所以你不能依赖这个?)。
我错过了什么吗?新的 ASP.NET 5 (ASP.NET MVC 6) 项目类型可以针对常规 .NET 吗?
如果答案是否定的,即使现在不可能,团队是否计划至少将其中一些客户端功能(bower、grunt 等)添加到“常规”ASP.NET (MVC 5 ) 未来的项目?
【问题讨论】:
-
您关心的是什么? ASP.NET 仍将拥有 .NET 框架的全部功能。只是 .NET 框架的打包方式与现在略有不同。 “常规 .NET”有什么新设置没有的?
-
我担心应该添加这些客户端框架(grunt、gulp、bower),以便在针对完整 .NET 框架的代码中也能正常工作。此外,他们为什么不呢?事实上,也许这是可能的,所以我的问题。
-
“'常规 .NET' 有什么新设置没有的?”它能够引用定期编译的类库(dll)。我突然意识到我不能引用任何本身还不是“ASP.NET 5 类库”的 dll 或项目。例如,我有一个针对 EF 的大型代码库,但 EF vnext 现在是超级 alpha 版本,我需要大量的工作来转换基于它的所有代码(包括其他基于 EF 的库,如 EF.Extended, EF.MappingApi、EF.BulkInsert 等)。
-
从外观上看,如果你把它放在一个 NuGet 包中,你可以在 vNext 中使用一个普通的 DLL 程序集:forums.asp.net/t/… 有帮助吗?
-
感谢 JLRishe!这实际上教会了我很多。不幸的是,我这样做了,将一个简单但定期编译的 .NET 程序集打包到本地 nuget 提要位置。所有这些都很好,而且进口也很好。但是,一旦导入,引用中的那个 dll 会显示一个黄色警告符号,并且网站会编译但在启动时会抛出错误。它显然不起作用,实际上我不知道它是怎么做到的,因为源框架不是完整的 .NET。
标签: asp.net .net asp.net-mvc-5 asp.net-core-mvc asp.net-core