我无法理解为什么这种方法无处不在,但在这个地方。

private usersliked createUserLiked(post post)
    {
        usersliked newUsersLiked = db.usersliked.Create();
        newUsersLiked.postId = post.idpost;
        int length = db.user.Count();
        user user = db.user.OrderBy(c => c.iduser).Skip(randomizer.Next(1, length)).FirstOrDefault();
        newUsersLiked.userId = user.iduser;
        db.usersliked.Add(newUsersLiked);
        db.SaveChanges();
        return newUsersLiked; 
    }

我想添加新的userLiked记录,它有一些外键postuser 添加idUser后, EF创建user的外键虚拟类。 但使用相同的方法链接post不起作用! 而且,由于表中的“post”图形不为null,因此它给出了一个错误。 正如您在屏幕截图中看到的,它的虚拟类是null。 为什么?

在此输入图像描述

更新:如果我手动设置发布,那么它会混淆user链接。 不知怎的,它将postId复制到userId,一切都刹车了。

在此输入图像描述

更新:问题解决了。 这是外键中的错误,他们引用了一个常见项目。

  ask by vsezan MDA translate from so

本文未有回复,本站智能推荐:

4回复

使用MySQL和实体框架的ASP.NET标识

我想使用ASP.NET Identity 2和Entity Framework一起使用MySQL进行存储,但我无法让它工作。 我试图按照http://k16c.eu/2014/10/12/asp-net-identity-2-0-mariadb/中的步骤操作,但在运行“启用迁移”时,会出现
3回复

实体框架MySQL tinyint(1)System.Boolean.Parse FormatException

我在使用MySQL数据库的 C# 模型优先项目中使用EntityFramework 6 。 一切都很好,我可以毫无问题地生成数据库。 然后,我使用设计器修改了.edmx文件,并开始了我遇到的问题。 首先,设计人员不再更新.edmx文件的CSDL内容和CS映射内容部分。 因此,
1回复

无法链接两个表; MySQL的; 实体框架C#

我有3个表:“ userDetails”,“ address”和“ country”。 “ UserDetails”和“ address”之间存在1到0..1的关系,“ country”和“ address”之间存在1到许多的关系,“ country”表已被填充,“ userDetails”具
1回复

VS 2013社区中MySQL数据库的EF6 ADO.NET实体数据模型

请帮忙。 我重新安装了VS 2013 Community,并通过Nuget下载了以下dll: 我还为Visual Studio 1.2.3安装了MySQL 在ADO.NET实体数据模型中,我可以连接到MySQl,但是当我单击“确定”时,什么也不会发生,并且我无法选择表(db fi
9回复

实体框架向导在MySQL上崩溃

我的问题与此类似,但崩溃稍后发生。 我必须在SQL Server和MySQL之间互操作EF数据库优先模型。 更具体地说,我的应用程序根据连接字符串和配置设置( DB_TYPE=MYSQL等)向SQL Server或MySQL触发了简单的SQL查询,这两个数据库具有相同的结构并维护在一起,因此
1回复

将MySql Provider与实体框架模型一起使用

我用谷歌搜索了这个话题,但是我没有真正找到解决方案: 我尝试这种方法 :我在vs2013安装了以下工具: 适用于Visual Studio 1.1.1的MySQL MySQL连接器/网络 我还使用NuGet安装了所有MySql库或工具。 但是我仍然找不到MySq
9回复

无法将MySQL连接用于实体框架6

我正在尝试将实体框架6与MySQL结合使用。 我确实为Visual Studio 1.1.1和MySQL .Net连接器6.8.3安装了MySQL插件。 问题是当我尝试创建新的ADO.NET实体模型时,无法为连接选择MySQL。 但是,如果我通过Visual Studio中的
2回复

实体框架6和MySql双循环选择和数据读取器中的错误

我正在观看一个视频课程,以学习有关EF 6 + MySql的知识,到目前为止,这很容易,但是现在我遇到了一个简单的代码问题,我花了8h的时间,但是还没有解决方案。 错误出现在“ cli.contatos”中的第二个Foreach上: 因此,这里的代码与视频课程完全相同,但是“老师”使用
2回复

是否可以使用实体框架创建像phpMyAdmin这样的数据库管理器? [关闭]

该应用程序的目标是为EF支持的任何数据库提供支持。 好吧,实际上我只需要能够创建表,修改表中的记录以及修改表的列即可。 就目前而言(我是新手),我无法想象如何通过在VS环境中按“从数据库更新模型”而不是按编程方式添加或删除现有表的列来修改现有表。 如果这是不可能的话,那么对我来说,使用SQ
1回复

实体框架添加命名空间

我现在使用的是Visual Studio2013。我最近重新安装了一台计算机,并在“从数据库更新模型”时遇到实体框架问题。原始应用程序是在VS2010上开发的,然后在VS2012上开发,现在VS2013 EF一直在VS2010上添加新的命名空间。 edmx设计师。 命名空间ComfortG