2

我有一个 objectDataSource,我试图在其Inserting事件中将一个对象作为参数传递。出于某种原因,Inserting is not getting fired before调用了 Insert`。

ObjectDataSource1_Inserting(object sender, ObjectDataSourceMethodEventArgs e)由于某种原因,它没有进入事件块。关于为什么的任何想法?

这是我需要传递的对象:

  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;
        }
    }
4

2 回答 2

2

一旦我遇到同样的问题但解决方案非常简单,我们的一位开发人员已经在 if (Page.PostBack == false) 中订阅了该事件

因此,根据基础知识(http 协议),服务器将忘记在下一次回帖时绑定

于 2009-11-27T04:45:23.867 回答
0

要将用户定义的对象传递给 ObjectDataSource,您必须包含一个不带参数的默认构造函数。数据源对象的公共属性还必须公开 get 和 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;
    }
 }
于 2009-11-26T22:21:31.507 回答