3

私はLinq to Entityが初めてで(実際、Linqは初めてです)、行を挿入するのに苦労しています。

いくつかのチュートリアル(どれも互いに同意していないように見えるか、非常に詳細ではありません)に従って、次のコードを思いつくことができましたが、私が持っているものを使用する方法を見つけるのに苦労しています...

DB は次のようになります。

namespace IdeaGen.Data
{
using System;
using System.Data.Entity;
using System.Data.Entity.Infrastructure;

public partial class IdeaGenEntities : DbContext
{
    public IdeaGenEntities()
        : base("name=IdeaGenEntities")
    {
    }

    protected override void OnModelCreating(DbModelBuilder modelBuilder)
    {
        throw new UnintentionalCodeFirstException();
    }

    public DbSet<Idea> Ideas { get; set; }
    public DbSet<User> Users { get; set; }
}
}

私のモデルは次のようになります。

public class NewIdea
{
    public int IdeaID { get; set; }
    public string Title { get; set; }
    public string Description { get; set; }
    public int UserID { get; set; }
}

(私はまだユーザーモデルをやっていません)

私のコントローラーはこのように見えますが、コンパイルされていません。

using (IdeaGenEntities ctx = new IdeaGenEntities())
        {
            var ideas = ctx.Ideas;
            NewIdea idea = new NewIdea();
            idea.Description = model.Description;
            idea.Title = model.Title;
            ctx.Ideas.Add(idea);
            ctx.SaveChanges();
        }

ああ、私もチュートリアルの1つに従ってこれを使用しています...

namespace IdeaGen.Data
{
public class DBBase
{
    private IdeaGenEntities _IdeaGenEntity = new IdeaGenEntities();

    public IdeaGenEntities IdeaGenEntity {get {return _IdeaGenEntity; } }
}
}

誰かが私を正しい方向に向けることができますか? 自分が何をしているのかについての基本的な理解が得られれば、残りの作業を行うことができますが、作業するものが何もないため、どこが間違っているのかについてちょっと暗闇の中にいます.

前もって感謝します

編集:

ユーザーuser619656のおかげでそれを手に入れました。更新されたコントローラーは次のようになります...

        IdeaGenEntities ctx = new IdeaGenEntities();
        Idea Idea = new Idea();
        Idea.Title = model.Title;
        Idea.Description = model.Description;
        ctx.Ideas.Add(Idea);
        ctx.SaveChanges();

ご協力いただきありがとうございます

4

1 に答える 1

4

Ideasは であり、このコレクションにはオブジェクトDbSet<Idea>のみを追加できます。Idea

しかし、ここで

NewIdea idea = new NewIdea();
idea.Description = model.Description;
idea.Title = model.Title;
ctx.Ideas.Add(idea);

NewIdea オブジェクトを Ideas に追加すると、エラーが発生します。

于 2013-05-12T11:30:01.640 に答える