0

我正在为实体框架使用动态数据,不幸的是我被困在 .NET 3.5 上,所以它是 EF1,目前这无法改变。

所以我的问题是,我尝试以几种方式添加 EntityDataSource.Include 属性来处理在 table1 的部分类中覆盖 ToString 方法时得到的空引用。我尝试在 EntityDataSource 声明中设置 Include in 标记,也尝试EntityDataSource.Include = "table2.table3"EntityDataSource.Selecting事件中设置,但都没有运气。

如您所见,我需要将包含添加到关联的关联中。我想在 table2 的覆盖 ToString 方法中显示“table3.name + table2.Date”,并在 table1 的编辑模式下反映在关联引用的下拉列表中。

请注意,Include 在 GridDataSource 上工作得很好,无论出于何种原因,我在 DetailsDataSource 上遇到问题。

4

1 回答 1

0

我找到了一种解决方法,即检查关联引用是否加载到 ToString 覆盖中,如果没有加载它。

public override string ToString()
{
    if (this.Course == null)
    {
        if (!this.CourseReference.IsLoaded)
            this.CourseReference.Load();

        return this.Course.Name + " - " + string.Format("{0:yyyy-MM-dd}", this.StartDate.Date);
    }
    else
        return this.Course.Name + " - " + string.Format("{0:yyyy-MM-dd}", this.StartDate.Date);
}
于 2013-04-08T22:40:25.130 回答