gpt4 book ai didi

c# - 将新项目添加到 CSLA EF4 模式

转载 作者:搜寻专家 更新时间:2023-10-30 20:57:34 27 4
gpt4 key购买 nike

我正在向我的 CSLA BusinessList 添加一个新项目。但我只能用 0 主键添加它,因为我添加的项目始终为空。如果我尝试: "Item temp= new item{...}"这个项目不是列表的子项。我会先发布我的添加功能,然后再发布一些数据门户。

    public void ExecuteNew(object obj)
{
if (Model != null)
{
Temp = Model.AddNew();
//Temp.FarbauswahlNr = 123;
//Temp.Kurztext = this.Kurztext;
//Temp.Ressource = this.Ressource;
//Temp.Vari1 = this.Vari1;
Model = Model.Save();
}

}

现在一些来 self 的 Business 类和 BusinessList 类的 DataPortal

    protected override void DataPortal_Update()
{
using (var ctx = Csla.Data.ObjectContextManager<Datenbank.TestDBEntities>.GetManager(Business.EntitiesDatabase.Name))
{
Child_Update();
}
}

protected override void Child_Create()
{

base.DataPortal_Create();

BusinessRules.CheckRules();

}



private void Child_Insert()
{
using (var ctx = Csla.Data.ObjectContextManager<TestDBEntities>.GetManager(EntitiesDatabase.Name))
{

try
{
var data = new Datenbank.Farbe();
data.Kurztext = ReadProperty<string>(KurztextProperty);
data.Ressource = ReadProperty<string>(RessourceProperty);
data.Var1 = ReadProperty<bool>(Vari1Property);
data.Vari2 = ReadProperty<string>(Vari2Property);
ctx.ObjectContext.Farben.AddObject(data);
ctx.ObjectContext.SaveChanges();
}
catch (Exception e)
{

MessageBox.Show(e.ToString());
}


}
}

可能的错误:NullReferebceException 是 unhadeld(因为 temp 总是 null)

最佳答案

问题是:CSLA 4.5 有一个错误,它会让您的 UI 在保存命令后卡住。现在我正在使用 CSLA 4.1,它工作得很好。

关于c# - 将新项目添加到 CSLA EF4 模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15632310/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com