ObjectDataSource bug.

è un bug noto, l'ObjectDataSorce non converte correttamente in tipo sting in DateTime, ne aveva parlato Andrea Boschin quà, avevo letto e incamerato.

sono passati i mesi tutto filava tranquillo, poi un giono appare sul forum questa domanda, i miei poveri neuroni relazionali, probabilmente non avevano assegnato chiavi univoche per i ricordi, non ricodavo nemmeno di ricordare.

quindi mi sono reinventato la ruota, ecco un altra soluzione alternativa al bug, che sonsiste nel creare una BoundFied personalizzata dove eseguito l'ovveride del metodo ExtractValuesFromCell, recuperato il valore, questo verrà parserizzato e inserito nel dictionary così da non rendere necessario l'intervento del ODS per la conversione.

public class MyDateTimeControlField : BoundField
{
public MyDateTimeControlField() { }

public override void ExtractValuesFromCell(IOrderedDictionary dictionary, DataControlFieldCell cell, DataControlRowState rowState, bool includeReadOnly)
{
Control _control = null;
string _dataField = this.DataField;
DateTime _date = DateTime.MinValue;

if (cell.Controls.Count > 0)
{
_control = cell.Controls[0];

TextBox _textBox = _control as TextBox;
if (_textBox != null)
{
try
{
_date = DateTime.Parse(_textBox.Text, CultureInfo.CurrentCulture.DateTimeFormat);
}
catch{}
}
}

if (dictionary.Contains(_dataField))
{
dictionary[_dataField] = _date;
}
else
{
dictionary.Add(_dataField, _date);
}
}
}

Nella stessa categoria

Commenti
Daniele Bochicchio scrive:
Re: ObjectDataSource bug.

Marco Leoncini wrote:
assegnato chiavi univoche per i ricordi, non ricodavo nemmeno di ricordare.

l'hai già segnalato su connect, così che lo correggano in futuro?
16/11/2006 ore 12.26 | 1 risposta
»»»» nostromo scrive:
Re: ObjectDataSource bug.

lo aveva già segnalato Andrea Boschin, ho solo aggiunto un altra soluzione alternativa.

ciao marco
16/11/2006 ore 15.56

Per inserire un commento, devi registrarti alla nostra community.

© 1998-2008 - nostromo - Il blog di Marco Leoncini

TagCloud
BLOG INFO
  • Post: 219
  • Commenti: 87
  • TrackBacks: 17
  • Feed blog e contenuti tecnici: RSS
  • Feed blog: RSS Atom OPML

MVP
CATEGORIE
I PIÙ LETTI DEL MESE
IN EVIDENZA