Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2012/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net mvc 无法将行添加到LINQ to EntityFramework中的表中-AddObject和InsertOnSubmit均缺失_Asp.net Mvc_Visual Studio 2012_Linq To Entities - Fatal编程技术网

Asp.net mvc 无法将行添加到LINQ to EntityFramework中的表中-AddObject和InsertOnSubmit均缺失

Asp.net mvc 无法将行添加到LINQ to EntityFramework中的表中-AddObject和InsertOnSubmit均缺失,asp.net-mvc,visual-studio-2012,linq-to-entities,Asp.net Mvc,Visual Studio 2012,Linq To Entities,我知道它应该是一个或另一个,这取决于是使用LINQtoSQL还是使用LINQtoEntities,但我知道为什么这两个选项(AddObject或InsertOnSubmit)都不可用吗?我正在使用LINQ转换实体,所以我不应该期望看到AddObject吗 更新:根据请求,我正在添加代码 控制器: using System.Data; using System.Data.Entity; using System.Linq; ...Unimportant code... private

我知道它应该是一个或另一个,这取决于是使用LINQtoSQL还是使用LINQtoEntities,但我知道为什么这两个选项(AddObject或InsertOnSubmit)都不可用吗?我正在使用LINQ转换实体,所以我不应该期望看到AddObject吗

更新:根据请求,我正在添加代码

控制器:

 using System.Data;
 using System.Data.Entity;
 using System.Linq;

 ...Unimportant code...

 private DataModel db = new DataModel(); // <-- DataModel.edmx

 ...Unimportant code...

    [HttpPost]
    public ActionResult ProcessApplication (HttpPostedFileBase file) {

        JobBoardUsersModel jm = new JobBoardUsersModel();

        ...jm properties are set...

        db.JobBoardUsers.Add(jm) // <- Here is where I cannot use AddObject or Add

        client.Send(message);

        jobDetails.IsApplied = true;
        return RedirectToAction("Index", jobDetails);
    }
AddObject()
ObjectSet
上的一种方法,可以在
ObjectContext
上访问。但是如果您使用的是Entity Framework 4.1或更高版本,则可能使用的是
DbContext
,它是更复杂的
ObjectContext
API上的一个门面

DbSet
上的
AddObject()
(这是您在
DbContext
中使用的)的等价物是
Add()

见:

如果需要访问
DbContext
上不可用的任何内容,也可以访问
ObjectContext

var objectContext = ((IObjectContextAdapter)context).ObjectContext;
至于
InsertOnSubmit()
,它仅在LINQtoSQL中可用

---更新---

应该是

JobBoardUser jm = new JobBoardUser();

非常感谢,但这比我目前的水平略高。我用我的模型作为参数尝试了“Add”方法,得到了一个“invalid arguments”错误。不用担心。您需要发布更多代码和详细信息以获得更多帮助。我添加了一些详细信息。希望这能澄清我的问题。完全无效参数错误是什么?听起来好像向JobBoardUsers添加了错误的模型。“System.Data.Entity.Dbset.Add(JobBoard.Models.JobBoardUsers)”的最佳重载方法匹配的参数无效”
JobBoardUsersModel jm = new JobBoardUsersModel();
JobBoardUser jm = new JobBoardUser();