0

ADO.NETエンティティデータモデルを作成し、linqを使用してOracleデータベースを更新/編集しました。

using (Entities ent = new Entities())
{
    RUSHPRIORITYRATE rp = new RUSHPRIORITYRATE();
    rp.RATE = rate;
    var query = from j in ent.RUSHPRIORITYRATEs
                        select j;
    List<RUSHPRIORITYRATE> list = query.ToList();
    if (list.Count == 0)
    {
        ent.AddToRUSHPRIORITYRATEs(rp);
        ent.SaveChanges();
    }
    else
    {
        foreach (RUSHPRIORITYRATE r in query)
        {
            r.RATE = rp.RATE;
        }
        ent.SaveChanges();
    }


}

常に1つのレコードを持つテーブルを追加または更新するメソッドがあります。レコードの値は、1つのレコードが配置された場合にのみ更新されます。テーブルへの追加は問題ありませんが、MSDNを介してリコアを更新する方法を調べました。「ent」には、ソリューションに必要な「submitchanges」メソッドがないようです。これを実行すると、「プロパティ'RATE'はオブジェクトのキー情報の一部であり、変更できません。」というエラーが発生します。

4

0 に答える 0