我很努力改变(实际添加)属性到我的数据库中已经存在的对象。更改数据库中的对象
在我的数据库中,我有Scenario
对象,并且每个Scenario
对象都与(一个或多个)SceneWriter
对象关联。现在我想添加一个SceneWriter
到我的Scenario
与给定的ScenarioID
。
这里是我试图做到这一点:
string filmID = comboBox1.SelectedValue.ToString();
Scenario newScenario = new Scenario();
foreach (Scenario scenario in scenarioes)
{
string thisID = scenario.filmID.ToString();
if (thisID.Equals(filmID))
{
try
{
// remove old scenario from DB
myDatabase.Scenario.Remove(scenario);
myDatabase.SaveChanges();
// add new scenario to DB, which now contains new scenewriter
newScenario = scenario;
scenario.SceneWriter.Add(newScenewriter); // this newScenewriter I fetched before
myDatabase.Scenario.Add(newScenario);
myDatabase.SaveChanges();
}
catch (Exception ec)
{
MessageBox.Show(ec.ToString());
}
}
}
但它给我一个错误,而我尝试从myDatabase
删除此Scenario
记录,因为它与其他一些表的链接。
所以我需要什么,是不是删除任何记录,但变化它(刚加入这个SceneWriter
),最好是在myDatabase
。
@Whizzil我的'filmID'变量转换为相同类型的'Scenario.filmID'这样你就不必做一个ToString() –
谢谢,它的工作 @Bob谢谢这就是我所做的 – Whizzil