实际上我花了一整天的时间在外键的 EntityFramework 上。假设我们有两个表。Process(app_id,process_id) LookupProcessId(process_id, process_description)
你可以理解两个表的名字,第一个表,使用 process_id 表示每个应用程序,描述在 seoncd 表中。实际上我尝试了很多次并弄清楚如何进行查询:就像
Dim result = (from x in db.Processes where x.LookupProcess is (from m in db.LookupProcessIds where descr = "example" select m).FirstOrDefault() select x).FirstOrDefault()
首先我想问有没有更简单的方法来做到这一点。
第二个我想问的问题是关于插入
p As New AmpApplication.CUEngData.Process
p.app_id=100
p.LookupProcess = (from m in db.LookupProcessIds where descr = "example" select m).FirstOrDefault()
db.AddToProcesses(p)
db.SaveChanges()
从外观上看,它看起来不错,但它给我的错误是“AmpCUEngEntities.Processes”中的实体参与“FK_Process_LookupProcess”关系。找到 0 个相关的“LookupProcess”。1 'LookupProcess' 是预期的。
我能问一下那个插入错误吗?那我的查询是否正确?