这是this question的后续行动。
由于我无法在Visual Studio中的.csproj中直接引用我的.xproj,因此我不得不直接引用构建的net461 dll。所以在这种情况下,我希望我的.csproj在运行.csproj之前预先编译.xproj。
我尝试手动修改.csproj并添加:
<ItemGroup>
<ProjectReference Include="..\SomeFolder\SomeProject.xproj">
<Project>{1A94B405-2D01-4A09-90D5-A5B31180A03B}</Project>
<Name>SomeProjectNamespace</Name>
</ProjectReference>
</ItemGroup>
但是当我构建.csproj时,它并没有构建.xproj。
当我运行.csproj时,我无法调试.xproj,这已经够糟了......但至少当我运行.csproj时我想确定我的最后一个版本.xproj编译。
答案 0 :(得分:1)
xproj&lt; =&gt; Visual Studio 2015中的csproj引用始终是错误的,并且从未运行良好。据我所知,没有好的解决方法。
也就是说,Visual Studio 2017 RC增加了对使用csproj构建.NET Core和.NET Standard的支持。这不赞成使用xproj和project.json。
使用这种新格式,项目引用的项目将如下所示:
<!-- App.csproj -->
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net461</TargetFramework>
</PropertyGroup>
<ItemGroup>
<ProjectReference Include="..\Library\Library.csproj" />
</ItemGroup>
</Project>
<!-- Library.csproj -->
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>netstandard1.1</TargetFramework>
</PropertyGroup>
</Project>