C# MVVM数据库子_Update()未更新

C# MVVM数据库子_Update()未更新,c#,wpf,database,mvvm,updates,C#,Wpf,Database,Mvvm,Updates,好吧,就这么定了。使用my Model引发子_Update()方法。我知道这不好,但我现在正在学习。现在,我将我的业务类作为参数来更改已经给定的行。 它做的一切都很好,没有任何错误消息,也没有空变量,但它没有改变数据库中的任何内容 在这里,我使用selectedIndex来选择要更新的正确项目 public void ExecuteAngestellte(object obj) { try { _selectedIndex.Child_Update(new Farb

好吧,就这么定了。使用my Model引发子_Update()方法。我知道这不好,但我现在正在学习。现在,我将我的业务类作为参数来更改已经给定的行。 它做的一切都很好,没有任何错误消息,也没有空变量,但它没有改变数据库中的任何内容

在这里,我使用selectedIndex来选择要更新的正确项目

public void ExecuteAngestellte(object obj)
{
    try
    {
       _selectedIndex.Child_Update(new Farbe { FarbauswahlNr = SelectedIndex.FarbauswahlNr, Kurztext = SelectedIndex.Kurztext, Ressource = SelectedIndex.Ressource, Vari1 = SelectedIndex.Vari1, Vari2 = SelectedIndex.Vari2 });

    }
    catch (Exception e)
    {
         MessageBox.Show(e.ToString());
    }
}
这是孩子们的最新消息

public void Child_Update(Farbe data)
{
    using (var ctx =Csla.Data.ObjectContextManager<TestDBEntities>.GetManager(EntitiesDatabase.Name))
    {
        var objectStateManager = ctx.ObjectContext.ObjectStateManager;
        var _data = new Datenbank.Farbe();

        _data.FarbauswahlNr = data.FarbauswahlNr;
        _data.Kurztext = data.Kurztext;
        _data.Ressource = data.Ressource;
        _data.Var1 = data.Vari1;
        _data.Vari2 = data.Vari2;

        ctx.ObjectContext.SaveChanges();

    }
}
public void Child_更新(Farbe数据)
{
使用(var ctx=Csla.Data.ObjectContextManager.GetManager(EntitiesDatabase.Name))
{
var objectStateManager=ctx.ObjectContext.objectStateManager;
var_data=new Datenbank.Farbe();
_data.FarbauswahlNr=data.FarbauswahlNr;
_data.Kurztext=data.Kurztext;
_data.Ressource=data.Ressource;
_data.Var1=data.Var1;
_data.Vari2=data.Vari2;
ctx.ObjectContext.SaveChanges();
}
}

thx for help

据我所知,您的数据不属于datacontext

我不确定这些变量都是什么意思,所以这里有一个简单的更新,我用实体框架来更新一条记录

public void UpdateTable(int idRecord, YourContext Context)
{ 
    MyRecord = Context.MyTable.Find(idRecord);
    myRecord.Column = "New Value";
    Context.SaveChanges();
 }
因此,我认为您需要:

 var MyData = ctx.ObjectContext.TableName.Find(id)

我假设您使用的是实体框架。这有帮助吗?

如果在Child\u Update函数中放置断点,它是否会到达SaveChanges?是的,它会到达SaveChanges()并且顺便说一句。我的插入工作正常不确定插入工作如何,因为它看起来像
\u数据
没有与数据上下文分离