Za każdym razem, gdy tworzymy kompilację w naszym głównym rozwiązaniu, otrzymujemy następujące ostrzeżenie:
Nie można zastosować właściwości publikowania dla elementu „microsoft.visualstudio.qualitytools.unittestframework”.
Czy ktoś widział coś takiego wcześniej? Jakieś pomysły, jak to naprawić? Dzieje się tak na wszystkich naszych maszynach deweloperskich, a także na naszym serwerze kompilacji TFS. Jednak pojawia się tylko w trybie debugowania.
źródło
Show all files
jest tutaj kluczem.Najwyższa głosowana odpowiedź jest idealna w obecnym kształcie, ale ci z nas, którzy mają do czynienia z większymi wybuchami, mogą skorzystać na tej alternatywnej odpowiedzi. Opisuje analogiczną poprawkę na poziomie pliku.
Ostrzeżenie jest spowodowane przez taki element:
<PublishFile Include="THIS IS USUALLY SOME IMAGINARY DLL"> <Visible>False</Visible> <Group> </Group> <TargetPath> </TargetPath> <PublishState>Exclude</PublishState> <IncludeHash>True</IncludeHash> <FileType>Assembly</FileType> </PublishFile>
... w pliku projektu (.csproj) emitując ostrzeżenie. Zwróć uwagę na PublishState „Exclude”; ten element mówi „proszę nie publikować wyimaginowanej biblioteki DLL”; jest to oczywiście niepotrzebna instrukcja, jeśli w czasie publikacji nie ma takiej biblioteki DLL, ale powoduje to również ostrzeżenie, ponieważ proces publikowania nie może ocenić tożsamości pliku.
Możesz usunąć cały
PublishFile
element z każdego elementu wdrożenia wymienionego w ostrzeżeniach, o ile ma on PublishState „Exclude”. Nie usuwaj mechanicznie każdego elementu za pomocą PublishState „Exclude”, ponieważ jeśli nie było o tym ostrzeżenia, plik jest prawdopodobnie dostępny w czasie publikacji i może zostać opublikowany - co byłoby niepożądaną zmianą produktu, o ile tylko chciałbyś pozbyć się ostrzeżenia.źródło