Domanda

Esistono metodi validi per convalidare ASP.NET 2.0 in base al DTD XHTML 1.0 Strict (o Transitional)? Sono interessato a sentire alcune idee prima di hackerare il nucleo della risposta HTTP.

Un grosso problema è il tag del modulo stesso, questo è l'output che ho ricevuto dal W3C quando ho provato a convalidare:

Line 13, Column 11: there is no attribute "name".
<form name="aspnetForm" method="post" action="Default.aspx" onsubmit="javascript

Quel tag è fondamentale per ASP.NET, come tutti sapete. Hmmmm.

È stato utile?

Soluzione

ASP.NET 2.0 e versioni successive possono effettivamente generare XHTML Strict (o Transitional). Ciò risolverà il tuo "non esiste alcun attributo", nome " errore di convalida, tra le altre cose. Per configurarlo, aggiorna il tuo file Web.config con qualcosa del tipo:

<system.web>
    ... other configuration goes here ...
    <xhtmlConformance mode="Strict" />
</system.web>

Per XHTML di transizione, utilizza invece mode = " Transitional " .

Vedi Procedura: configurare il rendering XHTML nei siti Web ASP.NET su MSDN.

Altri suggerimenti

Hai considerato il ASP.NET MVC Framework ? È probabile che sia una scommessa migliore se è richiesta la rigorosa conformità XHTML. Ottieni un maggiore controllo del tuo output, ma ti troverai a percorrere territori sconosciuti se ti senti già a tuo agio con il modello ASP.NET tradizionale.

È possibile modificare l'output dei controlli ASP.NET utilizzando tecniche come Adapters CSS . Anche se non consiglierei personalmente di usarli immediatamente, potrebbe darti qualche suggerimento su una buona soluzione.

In genere evito di usare i controlli ASP.NET ove possibile, tranne quelli che non generano markup da soli come il controllo Repeater. Esaminerei il framework ASP.NET MVC (su cosa è basato StackOverflow) in quanto ti dà il controllo del 100% sul markup.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top