Pregunta

Tengo un objectDataSource y estoy tratando de pasar un objeto como parámetro en su evento Inserting . Por alguna razón, La inserción no se realiza antes de que se llame a Insert`.

No se está metiendo en el bloque de eventos ObjectDataSource1_Inserting (object sender, ObjectDataSourceMethodEventArgs e) por alguna razón. ¿Alguna idea de por qué?

Aquí está el objeto que necesito pasar:

  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;
        }
    }
¿Fue útil?

Solución

Una vez que encontré el mismo problema pero la solución era muy simple, uno de nuestros desarrolladores se suscribió al evento en if (Page.PostBack == false)

Por lo tanto, según el servidor de los fundamentos (protocolo http), se olvidará el enlace en la próxima publicación de vuelta

Otros consejos

Para pasar objetos definidos por el usuario a un ObjectDataSource, debe incluir un constructor predeterminado que no tome parámetros. Las propiedades públicas del objeto de la fuente de datos también deben exponer los accesores get y 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;
    }
 }
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top