2009-07-28 14 views
12

Zastanawiasz się, jak mogę zatrzymać te irytujące ostrzeżenia kompilatora "Klasa lub wartość CssClass nie jest zdefiniowana" pochodząca z mojej ASP .NET MVC częściowe widoki/kontrolki użytkownika ASCX. CSS jest poprawnie zdefiniowany, ale odwołanie do pliku CSS jest oczywiście tylko na stronie wzorcowej. Moje widoki częściowe zawierają wiele odwołań do klas CSS na div itp., Więc dostaję ogromną ilość ostrzeżeń, których nie powinienem widzieć.Unikaj "Klasa lub klasa CssClass nie jest zdefiniowana" Ostrzeżenia w ASP.NET MVC ASCX Częściowe widoki (UserControls)

Jak mogę to rozwiązać?

Dziękujemy!

Odpowiedz

10

uwzględnienie tego w swojej częściowym widokiem:

<% if (false) { %> 
    <link rel="stylesheet" type="text/css" ... 
<% } %> 

To sprawi intellisense szczęśliwy i wyklucza stylów, gdy strona jest renderowane, tak że nie jest uwzględniony dwukrotnie.

+0

Spróbuję tego, dziękuję. To błąd w ASP.NET MVC, który, mam nadzieję, zostanie naprawiony w następnej wersji ... – Alex

+0

Alex, to nie jest poprawka, ponieważ jest to poprawny HTML, aby używać klas nie w arkuszu stylów. Rozwiązanie Roberta rozwiązuje "błędy" na klasach, które znajdują się w CSS, ale VS nadal będzie podawał niepoprawne ostrzeżenia na tych, które nie są, nawet w ASP .NET MVC. Nie mogę więc zgodzić się, że jest to "błąd" MVC. –

+0

"... nie naprawić ..." -> "... nie jest wadą ..." –

6

Jednym ze sposobów jest wyłączenie składni HTML Sprawdzanie (Narzędzia-> Opcje-> Edytor tekstu-> HTML-> Pokaż błędy-> W CSS).

Używam wtyczki Firefox Tidy, która daje lepsze porady, IMHO.

3

To nie jest usterka w ASP.Net MVC i nie sądzę, że będzie to naprawione w następnej wersji. Jest to "ograniczenie" (zauważ, jak unikam błędu w słowie) w asp.net (nie tylko mvc), który uniemożliwia mu dostęp do informacji nagłówkowych zawartych na stronie wzorcowej. Więc nie masz dostępu do javascript/css na stronach treści/usercontrols.

Kod dostarczony przez Roberta Harveya jest rozwiązaniem hackowym, którego używaliśmy, aby przezwyciężyć to.

Działa przy użyciu załączania pliku włączającego do bloku if, który zawsze jest fałszywy. Tak więc kompilator widzi plik css, ale środowisko wykonawcze go nie obsługuje.

Powiązane problemy