Entity framework Linq到实体,插入外键

Entity framework Linq到实体,插入外键,entity-framework,linq-to-entities,foreign-key-relationship,Entity Framework,Linq To Entities,Foreign Key Relationship,我第一次使用ADO实体框架,不确定插入包含外键的db recored的最佳方法 这是我正在使用的代码,如果对此有任何意见和建议,我将不胜感激 using (KnowledgeShareEntities entities = new KnowledgeShareEntities()) { Questions question = new Questions(); question.que_title = que

我第一次使用ADO实体框架,不确定插入包含外键的db recored的最佳方法

这是我正在使用的代码,如果对此有任何意见和建议,我将不胜感激

using (KnowledgeShareEntities entities = new KnowledgeShareEntities())
            {
                Questions question = new Questions();
                question.que_title = questionTitle;
                question.que_question_text = questionText;
                question.que_number_of_views = 0;
                question.que_is_anonymous = isAnonymous;
                question.que_last_activity_datetime = DateTime.Now;
                question.que_timestamp = DateTime.Now;
                question.CategoriesReference.Value = Categories.CreateCategories(categoryId);
                question.UsersReference.Value =  Users.CreateUsers(userId);
                entities.AddToQuestions(question);
                entities.SaveChanges();

                return question.que_id;
            }  

你应该使用类似于

question.UsersReference.EntityKey =  new EntityKey("MyEntities.Users",
    "ID", userId);
设置外键不需要用户对象,只需使用ID即可