Question

I have an objectDataSource and I am trying to pass an object as parameter in its Inserting event. For some reason, Inserting is not getting fired beforeInsert` is called.

It is not getting into the ObjectDataSource1_Inserting(object sender, ObjectDataSourceMethodEventArgs e) event block for some reason. Any ideas as to why?

Here is the object I need to pass:

  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;
        }
    }
Was it helpful?

Solution

Once i encountered the same issue but solution was very simple, one of our developer has subscribed the event in if (Page.PostBack == false)

So as per the fundamentals (http protocol) server will forget binding on next post back

OTHER TIPS

To pass user-defined objects to a ObjectDataSource you must including a default constructor that takes no parameters. The data source object's public properties must also expose both get and 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;
    }
 }
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top