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;
        }
    }
È stato utile?

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;
    }
 }
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top