Mat*_*oks 46 .net .net-core dnx asp.net-core
我正在尝试使用Visual Studio 2015 RC,特别是要切换到新的ASP.NET 5框架,项目结构和运行ASP.NET 5应用程序的新DNX.
我的雇主有许多针对.NET Framework 4.5.2的现有解决方案.在我们现有的Visual Studio解决方案中,我们可能有以下项目:
[Solution] Sample.sln
[Folder] src
[Project] ClassLibrary.csproj
[Project] WindowsService.csproj
[Project] WebApplication.csproj
[Folder] test
[Project] ClassLibrary.UnitTests.csproj
...
Run Code Online (Sandbox Code Playgroud)
在这种情况下,ClassLibrary.csproj是一个包含共享代码的C#类库.这是一个依赖/双方所引用WindowsService.csproj和WebApplication.csproj.
我们没有特别努力的目标.NET的核心,dnxcore50.在这个阶段,我们很高兴以.NET Framework为目标dnx451.但是,我们绝对试图利用ASP.NET 5的新功能和相关的项目结构.
以下是我想到的一些选项,但两者都有问题.
当我们用WebApplication.csproj新的ASP.NET 5 DNX项目替换上面的项目时,WebApplication-dnx我们仍然可以引用ClassLibrary.csproj这个新的DNX项目和现有WindowsService.csproj项目.但是出现了一些问题:
这种方法意味着对ClassLibrary.csproj需要重建的代码的任何更改都在运行中可见WebApplication-dnx.这并不奇怪,但意味着我们无法获得完整的源代码编译优势WebApplication-dnx.
我们不能轻易地针对其他框架,例如dnxcore50.如上所述,这不是现阶段的具体目标.
如果我们ClassLibrary.csproj用DNX类库项目替换^ ClassLibrary-dnx那么选项1中的问题不适用.这种方法似乎更加符合.NET运行时和ASP.NET等相关技术的前进方式.
不过,我不能找到一种方法来引用ClassLibrary-dnx从WindowsService.csproj.如果这种方法是可行的,我想这个解决方案与项目级别选项有关Produce outputs on build,然后引用.nupkg或者甚至.dll可以在构建期间生成.但是,我看不到通过工具实现这一目标的简洁方法.
^ VSX Class Library (Package)RC 中调用DNX类库项目.此项目类型以前ASP.NET Class Library在CTP中调用.
根据以上信息,我正在寻找:
一些反馈到我的方案选项和问题.
对于我没有想到的其他选项的建议.
也许表明应采用哪种方法向前发展.
Vic*_*aci 22
看看EntityFramework的作用.
它们针对3个TFM:net45,.NETPortable,Version = v4.5,Profile = Profile7,frameworkAssemblies,它们在同一个文件夹中同时包含csproj和xproj .
基本上,对于每个项目,您有两个项目文件.
但是我找不到从WindowsService.csproj引用ClassLibrary-dnx的方法.
不幸的是,那是不可能的.你只能从xproj引用csproj,而不是相反.您有两种选择:(1)像EF一样同时使用xproj和csproj,或者(2)从csproj引用NuGet包.
如果你想做替代(2),那么你可以将xproj的输出设置为一个文件夹,并将其添加为NuGet提要.
| 归档时间: |
|
| 查看次数: |
7767 次 |
| 最近记录: |