1

EF4 を使用してデータベース内のアイテムを検索し、次のように挿入または編集する必要があるかどうかを判断しています。

 List<Campground> CampgroundEntities = new List<Campground>();

 using (MiscEntities pd = new MiscEntities())
            {
                Campground kc = pd.Campground.FirstOrDefault(i => i.Name == name);

                if (kc != null)
                {
                    kc.StreetAddress = streetAddress;
                    kc.City = city;
                    kc.State = state;
                    kc.Zip = zip;
                    kc.URL = campgroundUrl;
                    kc.UpdatedDT = DateTime.Now;

                    CampgroundEntities.Add(kc);
                }
                else
                {
                    kc = new Campground();
                    kc.Name = name;
                    kc.StreetAddress = streetAddress;
                    kc.City = city;
                    kc.State = state;
                    kc.Zip = zip;
                    kc.URL = campgroundUrl;
                    kc.AddedDateTime = DateTime.Now;

                    CampgroundEntities.Add(kc);
                }
            }

エンティティをリストに追加してから、それらの変更をデータベースにコミットします。

        using (MiscEntities pd = new MiscEntities())
        {
            foreach (var item in CampgroundEntities)
            {
                pd.Campground.AddObject(item);
            }
            pd.SaveChanges();
        }

明らかにそれは機能しませんが、可能であれば、その接続を使用して挿入と更新の両方を処理したいと考えています。それはできますか?

4

1 に答える 1

1
using (MiscEntities pd = new MiscEntities())
{
    Campground kc = pd.Campground.FirstOrDefault(i => i.Name == name);

    if (kc == null)
    {
        kc = new Campground();
        pd.Campground.Add(kc);          
    }

    kc.StreetAddress = streetAddress;
    kc.City = city;
    kc.State = state;
    kc.Zip = zip;
    kc.URL = campgroundUrl;
    kc.UpdatedDT = DateTime.Now;

    CampgroundEntities.Add(kc);
}
于 2012-06-11T18:53:10.813 に答える