In einer ASP.NET MVC 3 Razor-Ansicht habe ich den Code:
<!DOCTYPE html>
<html>
<head>
<style type="text/css">
@media print
{
table { page-break-inside:auto; width: 100%; }
tr { page-break-inside:avoid; page-break-after:auto }
thead { display:table-header-group }
tfoot { display:table-footer-group }
}
</style>
</head>
<body>
<table>
Allerdings bekam ich den Fehler:
The name 'media' does not exist in the current context.
Vielen Dank.
Das @
ist ein reservierter Charakter in Razor. Aber Sie können es mit entkommen @@
:
@@media print
In Rasiermesseransichten, @
ist das magische Zeichen, das dem Code vorangeht.
Verwenden Sie in Ihrem Fall 2 @@
. Andernfalls wird Razor denken, dass es sich um einen Code/Ausdruck handelt.
@@media print.
Alternativ können Sie verwenden Html.Raw
Methode auch.
@Html.Raw("@")media print
Sie können dasselbe tun, wenn Sie den Twitter-Handle-Namen drucken, der die hat @
drin.
Hier ist ein guter MSDN-Link, um mehr über die Razor-Syntax zu erfahren und hier ist einer von phil hack
Sie erhalten diesen Fehler wann?
– Kevin Boucher
28. November 2012 um 18:58 Uhr
Vor dem Debuggen befindet sich auf dem Bildschirm eine rote Wellenlinie unter dem Wort.
– Benutzer1108948
28. November 2012 um 19:00 Uhr