Sto cercando di capire se esiste un modo per assicurarsi che l'input solo numerico sia consentito utilizzando Annotazioni dati ed Entity Framework.Come rendere il campo di immissione per consentire numeri solo utilizzando EF e Annotazioni dati?
Sto usando il seguente codice
[Required]
[DisplayName("Client No")]
[Column("client_no", TypeName = "smallint")]
public virtual Int16 Number { get; set; }
Voglio che questo per essere visualizzato utilizzando la classe numero.
In un posto in cui utilizzare il seguente
<input type="number" name="searchClientNo" class="numericOnly" /><br />
ma nel modulo di iscrizione che sto usando
@Html.EditorFor(m => m.Number, EditorTemplate.TextBox)
dove ho una custom made EditorFor con il seguente codice
<div class="editor-label">
@Html.Label((ViewData.ModelMetadata.DisplayName??ViewData.ModelMetadata.PropertyName),
new Dictionary<string, object>
{
{ "for", ViewData.ModelMetadata.PropertyName }
})
</div>
<div class="editor-field">
@Html.TextBox("", (object)Model,
new Dictionary<string, object>
{
{ "id", ViewData.ModelMetadata.PropertyName },
{ "name", ViewData.ModelMetadata.PropertyName },
{ "class", "text-box single-line"},
{ "data-bind", "value: " + ViewData.ModelMetadata.PropertyName },
})
@Html.ValidationMessage(ViewData.ModelMetadata.PropertyName,
new Dictionary<string, object>
{
{ "data-valmsg-for", ViewData.ModelMetadata.PropertyName }
})
</div>
Mi chiedo come è possibile mantenere questo codice senza modifiche ma utilizzare comunque la sola casella di testo numerico. Devo usare UIHint?
Oppure, in alternativa, è possibile fare il mio attuale EditorFor più intelligente?
Ho trovato questo post del blog http://robseder.wordpress.com/2012/06/01/uihint-displaytemplates-and-editortemplates-in-mvc/ ma sto già utilizzando una consuetudine EditorFor. Potrebbe essere necessario aggiungere un nuovo tipo, ad esempio EditorTemplate.NumericTextBox e aggiungere un altro editor? Questo suona come si può lavorare, ho intenzione di provare questo domani ...
Grazie mille in anticipo.
Hi Darin, Questa è la soluzione che stavo pensando di implementare, ma voglio chiedere se è possibile all'interno di un particolare EditorFor (il mio tipo generico di tetxbox) prendere in qualche modo la decisione in base al tipo del modello? Ho aggiunto il mio codice corrente alla domanda. – Naomi
e inoltre, sto usando @ Html.TextBox e fornisco le proprietà, ma come apparirà il codice se invece proverò a usare ? – Naomi
Darin, Ho poche altre domande correlate. Ho implementato il seguente @ Html.TextBox ("", ViewData.TemplateInfo.FormattedModelValue, new {type = "number", @class = "numericonly"}) @ * * @ – Naomi