1

在互联网上搜索我找到了这个页面:

http://connect.microsoft.com/VisualStudio/feedback/details/585738/exception-in-entity-data-model-designer-extension-a-property-extension-cannot-edit-an-item-in-an-实体框架命名空间

我有一个类似的问题。我正在尝试修改 .edmx 文件的结构,添加一个 complexType 但这会导致抛出 InvalidOperationException 。我认为创建一个范围可以避免这个问题,但事实并非如此。这是我正在使用的一段代码:

     public void AddComplexTypeToConceptualModel(XElement document, XElement entityType)

    {

        XElement lastEntityType = document.Descendants(XName.Get("EntityType", "http://schemas.microsoft.com/ado/2008/09/edm")).LastOrDefault();

        if (lastEntityType != null)

        {

            using (EntityDesignerChangeScope scope = Context.CreateChangeScope("Create ComplexType in Conceptual Model"))

            {



                lastEntityType.AddAfterSelf(CreateComplexType(entityType));

                // Commit the changes.

                scope.Complete();

            }

        }

    }

当我运行上面显示的代码时,我收到 InvalidOperationException:属性扩展无法编辑实体框架命名空间中的项目

我正在评估的另一种可能性是使用 ModelTransformExtension 类对 context.CurrentDocument 进行更改。

你知道有什么方法可以做到这一点而不会发生这种异常吗?欢迎任何帮助或建议。

提前致谢

奥克塔维奥

4

0 回答 0