我有一個.NET 4.0構建的C#項目,對.NET 4.5構建的項目具有軟/間接依賴關係(通過反射)。當我構建.NET 4.0項目時,自動構建.NET 4.5項目?它不需要被引用
我試圖找出my40project.csproj
中的條目,當我構建my40project.csproj
時,將生成my45project.csproj
。儘管如此,我做的不是需要在4.0項目中引用生成的DLL。
我在my40project.csproj
以下條目:
<ProjectReference Include="$(RootDir)\path\to\project\my45project.csproj">
<Project>{some guid}</Project>
<Name>my45project</Name>
</ProjectReference>
然而,這會產生以下錯誤消息:
"D:\path\to\project\my40project.csproj" (default target) (1) ->
(ResolveAssemblyReferences target) ->
error SCP3000: A non-baseline warning (MSB3274) was encountered: The primary reference "my45project.dll" could not be resolved because it was built against the ".NETFramework,Version=v4.5" framework. This is a higher version than the currently targeted framework ".NETFramework,Version=v4.0".
有誰知道我可能會解決這個問題?我很抱歉,如果這是重複的;搜索時發現的問題涉及直接使用4.0項目中生成的.NET 4.5 DLL,我不需要這樣做(我只需要需要構建它)
謝謝!
你不能那樣做。 –
根本沒有引用該項目,只是複製輸出DLL的反射 – Steve
你不能引用較低版本到較高版本,但反之亦然。因爲,許多系統不支持前向兼容性,但是向後兼容性是。 –