8

Czy ktoś jest świadomy sposobu, aby wizualne studio całkowicie ignorowało plik podczas kompilacji? Mam rozwiązanie C#, które ma plik foo.config, który nie jest tak naprawdę standardowym plikiem konfiguracyjnym - jest to po prostu plik tekstowy. Podczas kompilacji VS chwyta plik i bomby.Jak skompilować kompilator Visual Studio zignorować plik?

Chciałbym, aby działała tak, jakby była to tylko plik tekstowy. Nie mam możliwości zmiany nazwy pliku.

EDYCJA: Proszę zauważyć, że BuildAction nie wyklucza plików z kompilatora je sprawdzającego. Po prostu decyduje, czy plik jest wkompilowany w złożenie, czy jest to zawartość (jak jpg lub coś podobnego), czy jest to plik zasobów. Aby uzyskać więcej informacji: see the MSDN page.

EDIT2: Wygląda na to, że jeśli masz plik tekstowy o nazwie foo.config i masz go otwartego podczas budowania, VS2005 wyświetli komunikat o błędzie, że plik powinien być xml. Jeśli jednak zamkniesz plik, VS2005 zignoruje go.

Rozwiązanie: Weryfikacja w programie Visual Studio powoduje błędy w przypadku otwarcia niezgodnego pliku w czasie kompilacji. Aby dowiedzieć się, jak to wyłączyć (dla HTML), zobacz Scott Guthrie's post. Jak wspomniał Allen, powinieneś również ustawić Action Build na "None". Niestety, to nie zatrzyma błędów kompilacji, jeśli masz otwarty plik.

+1

@ edit2: dokładnie, dokładnie jak wyjaśniam w mojej odpowiedzi :) –

Odpowiedz

21

prawy przycisk myszy> Właściwości

Budowa Działanie: ustawiony na „None”

Edit: Jeśli mówimy o app.config, naprawdę nie mogę się bałagan z formatem, że trzeba umieścić w innym pliku .config.

Właśnie sprawdziłem, VS.net nie dba o to, o ile jego app.config lub web.config i akcja kompilacji plików konfiguracyjnych jest ustawiona na "None", to będzie "błąd", jeśli masz otwarty plik ale nie spowoduje to niepowodzenia kompilacji lub uniemożliwi jej budowanie złożeń.

Zamknij plik, a błędy znikną, podobnie do błędów dotyczących znaczników HTML. Wyświetlenie tych "błędów" jest prawdopodobnie konfigurowalnym ustawieniem w kontracie

2

Wystarczy kliknąć plik prawym przyciskiem myszy i wybrać opcję "Wyklucz z projektu".

Jeśli nadal chcesz zobaczyć go w swoim projekcie, wybierz projekt i kliknij przycisk "Pokaż wszystkie pliki" u góry eksploratora rozwiązań. Spowoduje to wyświetlenie wszystkich plików w drzewie katalogów, nawet jeśli nie są one częścią projektu.

+0

To będzie jednak wyłączone spod kontroli kodu źródłowego. – Crono

+0

@Crono - prawdopodobnie, ale wszystko zależy od tego, czego używasz do kontroli źródła. –

1

Czy jesteś pewien, że kompilacja VS pliku .config ??

Powinieneś sprawdzić działanie kompilacji w opcjach pliku i można go ustawić na none.

5

Czynność do wykonania zależy od rozwiązania i typu pliku. Na przykład (w VS2005), w rozwiązaniu C++ mogę kliknąć prawym przyciskiem myszy nazwę pliku źródłowego w eksploratorze rozwiązań i wyświetlić jego właściwości. Pierwszą opcją "General" jest "Excluded From Build", która pozwoli ci wykluczyć plik z procesu budowania bez wyłączenia go całkowicie z projektu.

Podniosłem plik .config w rozwiązaniu C# i znalazłem opcję "Kompiluj działanie" w sekcji Zaawansowane. To powinno być prawdopodobnie ustawione na "Brak".

+0

Czy to różni się w VS2008? W 2005 r. Nie widzę sekcji "Ogólne" ani opcji "Wyklucz z kompilacji". – VanOrman

+0

Prawdopodobnie zależy to od rozwiązania i typu pliku. Właśnie podniosłem właściwości pliku konfiguracyjnego w rozwiązaniu C# i wygląda na to, że odpowiedź Allena może być tym, czego potrzebujesz. – zweiterlinde

Powiązane problemy