这是我的问题。我会尽量让我的问题尽可能简单。所以,我在数据库中有 2 个类和两个表,它们彼此没有连接,让我们将它们命名为 A 类和 B 类,看起来像:
public class User
{
[Key]
public int userID{ get; set; }
public User(string aName, string aPhone, string aEmail)
{
Name = aName;
Email= aEmail;
Phone= aPhone;
}
public string Name { get; set; }
public string Email{ get; set; }
public string Phone{ get; set; }
}
public class Work
{
[Key]
public int workID{ get; set; }
public Work(string aWorkName, string aAddress, string sPosition)
{
WorkName= aWorkName;
Address= aAddress;
Position= aPosition;
}
public string WorkName{ get; set; }
public string Address{ get; set; }
public string Position{ get; set; }
}
我现在要做的是在数据库中创建第三个类和第三个表。我应该能够用前两个表中的信息填充第三个表中的列。例如,它的列应该是名称电话电子邮件工作名称地址位置。所以我取 NameID 和 workID,并根据这些主键我应该用所有信息填充第三个表。应该如何完成?我认为应该做一些事情像这样:
public class CombinedTable
{
[Key]
public int cID{ get; set; }
public User user{ get; set; }
public Work work{ get; set; }
}
让我们在主函数中说一些这样的查询:
var UserResult = from p in db.User
where p.UserId.Equals(userID)
select p;
var WorkResult= from p in db.Work
where p.WorkID.Equals(workID)
select p;
var combinedInfo= new CombinedTable()
{
User = UserResult,
Work= WorkResult
};
db.CombinedTable.Add(combinedInfo);
int savedChanges = db.SaveChanges();
但我错过了一些东西。我希望你明白。我首先使用实体框架和代码。非常感谢任何建议。谢谢。PS:再澄清一次。如果我使用 workID=5 和 UserID=1,在第三个表中,应该从 ID 为 1 的用户的信息中创建新行并使用 ID 5。你明白了吗?我希望有人能得到它。。