evento objectdatasource Inserção não disparar?
-
05-07-2019 - |
Pergunta
Eu tenho um ObjectDataSource e eu estou tentando passar um objeto como parâmetro em seu evento Inserting
. Por alguma razão, Inserting is not getting fired before
Insert` é chamado.
Não está entrando no bloco evento ObjectDataSource1_Inserting(object sender, ObjectDataSourceMethodEventArgs e)
por algum motivo. Alguma idéia por que motivo?
Aqui é o objeto eu preciso passar:
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;
}
}
Solução
Uma vez eu encontrei o mesmo problema, mas solução foi muito simples, um de nosso desenvolvedor tenha subscrito o evento em if (falsa Page.PostBack ==)
Assim, de acordo com os fundamentos (protocolo http) servidor vai esquecer vinculativa para próximo post volta ??p>
Outras dicas
Para passar objetos definidos pelo usuário a um ObjectDataSource deve incluindo um construtor padrão que leva sem parâmetros. propriedades públicas do objeto fonte de dados também deve expor ambos os acessores get e set.
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;
}
}