English 中文(简体)
EF 许多对许多解析对象
原标题:EF Many To Many Exisiting object

我有以下数据库表格:

Document Country (never added to) DocumentLanguage

DocumentLanguage 是一个国家与文档之间的链接表格,仅包含 ID s。 实体设计师( 正确) 添加此为导航属性 。

我的代码如下:

 public void IdentifyLanguages(List<Country> languages)
    {
        foreach (Country c in languages)
        {
            foreach (var languageIdentifier in c.LanguageIdentifiers)
            {
                if (document.DocumentText.ToLower().Contains(languageIdentifier.LanguageIdentifier1.ToLower()))
                {                      
                   document.Countries.Add(c); 
                    break;
                }

            }
        }
    }

并随后保存对象:

context.Document.AddObject(_document);
context.SaveChanges();

我发现以下错误:

只有当该财产的现值为无效时才能设定实体键属性 。

可能有一个非常显而易见的发型, 我尝试过使用附件, 使用根管对象, 但必须有一个简单的解决方案, 以确保我不是第一个拥有这种装备的人!

问题回答

当您使用 AddObject 保存对象时, 您的文档是否已经在数据库中存在? AddObject 只用于添加新对象, 而不是更新已有对象





相关问题
Anyone feel like passing it forward?

I m the only developer in my company, and am getting along well as an autodidact, but I know I m missing out on the education one gets from working with and having code reviewed by more senior devs. ...

NSArray s, Primitive types and Boxing Oh My!

I m pretty new to the Objective-C world and I have a long history with .net/C# so naturally I m inclined to use my C# wits. Now here s the question: I feel really inclined to create some type of ...

C# Marshal / Pinvoke CBitmap?

I cannot figure out how to marshal a C++ CBitmap to a C# Bitmap or Image class. My import looks like this: [DllImport(@"test.dll", CharSet = CharSet.Unicode)] public static extern IntPtr ...

How to Use Ghostscript DLL to convert PDF to PDF/A

How to user GhostScript DLL to convert PDF to PDF/A. I know I kind of have to call the exported function of gsdll32.dll whose name is gsapi_init_with_args, but how do i pass the right arguments? BTW, ...

Linqy no matchy

Maybe it s something I m doing wrong. I m just learning Linq because I m bored. And so far so good. I made a little program and it basically just outputs all matches (foreach) into a label control. ...

热门标签