ObjectdataSource L'inserimento dell'evento non si avvia?
-
05-07-2019 - |
Domanda
Ho un objectDataSource e sto provando a passare un oggetto come parametro nel suo evento Inserimento
. Per qualche motivo, l'inserimento non viene attivato prima che venga chiamato
Insert`.
Non sta entrando nel blocco eventi ObjectDataSource1_Inserting (mittente oggetto, ObjectDataSourceMethodEventArgs e)
per qualche motivo. Qualche idea sul perché?
Ecco l'oggetto che devo passare:
public class FeedItem
{
string feedItemTitle;
string feedItemLink;
public string FeedItemTitle
{
get { return feedItemTitle; }
}
public string FeeDItemLink
{
get { return feedItemLink; }
}
public FeedItem(string _feedItemTitle, string _feedItemLink)
{
feedItemTitle = _feedItemTitle;
feedItemLink = _feedItemLink;
}
}
Soluzione
Una volta riscontrato lo stesso problema ma la soluzione era molto semplice, uno dei nostri sviluppatori ha sottoscritto l'evento in if (Page.PostBack == false)
Quindi, come per il server Fundamentals (protocollo http), si dimenticherà il prossimo post precedente
Altri suggerimenti
Per passare oggetti definiti dall'utente a un ObjectDataSource è necessario includere un costruttore predefinito che non accetta parametri. Le proprietà pubbliche dell'oggetto origine dati devono inoltre esporre sia get che set accessors.
public class FeedItem
{
string feedItemTitle;
string feedItemLink;
public string FeedItemTitle
{
get { return feedItemTitle; }
set { feedItemTitle= value; }
}
public string FeeDItemLink
{
get { return feedItemLink; }
set { feedItemLink= value; }
}
public FeedItem(){}
public FeedItem(string _feedItemTitle, string _feedItemLink)
{
feedItemTitle = _feedItemTitle;
feedItemLink = _feedItemLink;
}
}