Tôi có hai tham chiếu đến một hội SQLite, một cho 32-bit và một cho 64-bit, trông giống như thế này (đây là một dự án thử nghiệm để cố gắng loại bỏ các cảnh báo, không bị treo lên trên đường dẫn):Tham chiếu có điều kiện trong dự án .NET, có thể loại bỏ cảnh báo?
<Reference Condition=" '$(Platform)' == 'x64' " Include="System.Data.SQLite, Version=1.0.61.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139, processorArchitecture=AMD64">
<SpecificVersion>True</SpecificVersion>
<HintPath>..\..\LVK Libraries\SQLite3\version_1.0.65.0\64-bit\System.Data.SQLite.DLL</HintPath>
</Reference>
<Reference Condition=" '$(Platform)' == 'x86' " Include="System.Data.SQLite, Version=1.0.65.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139, processorArchitecture=x86">
<SpecificVersion>True</SpecificVersion>
<HintPath>..\..\LVK Libraries\SQLite3\version_1.0.65.0\32-bit\System.Data.SQLite.DLL</HintPath>
</Reference>
Điều này tạo ra những cảnh báo sau đây:
Warning 1 The referenced component 'System.Data.SQLite' could not be found.
có thể cho tôi để thoát khỏi cảnh báo này? Một cách tôi đã xem xét nó để chỉ cần cấu hình dự án của tôi là 32-bit khi tôi phát triển, và để cho máy xây dựng sửa tham chiếu khi xây dựng cho 64-bit, nhưng điều này có vẻ hơi khó xử và có thể dễ bị lỗi.
Bất kỳ tùy chọn nào khác?
Lý do tôi muốn loại bỏ nó là cảnh báo rõ ràng đang được TeamCity chọn và định kỳ được gắn cờ là thứ tôi cần xem xét, vì vậy tôi muốn loại bỏ hoàn toàn.
Sửa: mỗi câu trả lời, tôi đã cố gắng này:
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' ">
...
<SqlitePath>..\..\LVK Libraries\SQLite3\version_1.0.65.0\32-bit</SqlitePath>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' ">
...
<SqlitePath>..\..\LVK Libraries\SQLite3\version_1.0.65.0\32-bit</SqlitePath>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x64' ">
...
<SqlitePath>..\..\LVK Libraries\SQLite3\version_1.0.65.0\64-bit</SqlitePath>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x64' ">
...
<SqlitePath>..\..\LVK Libraries\SQLite3\version_1.0.65.0\64-bit</SqlitePath>
</PropertyGroup>
và sau đó trong tài liệu tham khảo của tôi:
<Reference Include="System.Data.SQLite">
<SpecificVersion>False</SpecificVersion>
<HintPath>$(SqlitePath)\System.Data.SQLite.DLL</HintPath>
</Reference>
này đã thoát khỏi những cảnh báo, nhưng nó đúng ?
Tôi đã chỉnh sửa câu trả lời của mình với những gì tôi nghĩ là chính xác, bạn có thể nhìn vào nó và cho tôi biết nếu đó là ý của bạn? –
@Lasse: Điều đó có vẻ đúng. – Richard