0

当我尝试使用以下代码块时:

    private MarketingDBDataContext DB_Marketing;

    public DBFacade()
    {
        DB_Marketing = new MarketingDBDataContext();
    }        
    public void updateSingleObj(object obj)
    {
        if (obj is Marketing.Cust)
        {
            try
            {                     
                DB_Marketing.Refresh(RefreshMode.OverwriteCurrentValues, obj);
            }
            catch (Exception ex)
            {
            }
        }
    }

我得到了这个例外:

An object specified for refresh is not recognized

我有一个与另一个数据上下文和另一个实体对象引用类似的方法,效果很好。

我有一个 Marketing Cust gui,它打开一个新的对话框窗口来输入网站链接。我想在新的 DialogWindow 出现之前检查当前的 Marketing Cust 对象是否更改了此 Weblink 值。

4

1 回答 1

0

发现了问题。有两个控制器,每个控制器都有一个 Database 门面的实例。我尝试在错误的控制器中重用一个方法,忘记了控制器为相应的数据库制作和数据库外观实例,这导致了一个 DataContext,其中该对象不存在。

我给其他人的建议是,检查实例化 DataContext 的位置,并确保对象包含在其中。

于 2012-09-27T09:48:23.487 回答