【问题标题】:How do I manually edit table mappings in ADO.NET in Visual Studio 2010?如何在 Visual Studio 2010 的 ADO.NET 中手动编辑表映射?
【发布时间】:2010-05-06 21:23:49
【问题描述】:

对于我认为简单的问题,我似乎找不到答案。我有一个刚刚创建的实体模型,我想手动设置表和列的名称。我可以看到“映射详细信息”,但如何编辑或添加?

【问题讨论】:

    标签: entity-framework ado.net visual-studio-2010


    【解决方案1】:

    答案似乎是,你不能不进入 XML。您可以使用 Entity Framework Power Pack 自定义生成模板,但没有用于编辑映射的直接 GUI。

    【讨论】:

      【解决方案2】:

      我打开 edmx 文件所在的文件夹,查看其中的所有文件,并找到可能的解决方案。

      1. 我建议先安装notepad++,然后在文件资源管理器中右击Edmx文件,点击Edit with Notepad++就会显示xml文件内容,也可以直接通过notepad.exe打开Edmx文件
      2. 您会在文件的顶部看到类似这样的内容:

        <EntityType Name="DataTableName">
          <Key>
            <PropertyRef Name="id" />
          </Key>
          <Property Name="DataColumn1" Type="bigint" Nullable="false" />
          <Property Name="DataColumn2" Type="datetime" Nullable="false" />
          <Property Name="DataColumn3" Type="nvarchar" MaxLength="255" />
          <Property Name="DataColumn4" Type="nvarchar" MaxLength="255" />
        
        </EntityType>
        
      3. 我要做的是删除DataColumn4,我首先在VS中打开Edmx文件,直接在VS UI中点击列名,然后在键盘上按Delete,你会发现在Mapping Detail WindowDataColumn4 属性右侧将为空,但左侧DataColumn4 仍然存在。

      4. 然后,使用步骤 1 打开 edmx 文件,删除步骤 2 中的属性并保存文件。

        Remove--&gt; &lt;Property Name="DataColumn4" Type="nvarchar" MaxLength="255" /&gt;

      5. 重启visual studio,再次打开edmx你会发现DataColumn4消失了,我尝试连接DB并操作Data,工作正常。

      【讨论】:

        【解决方案3】:

        如果您在 Visual Studio 中打开了 .edmx 文件,您应该能够简单地右键单击表或表中的列并选择“重命名”。更改名称后,它将反映在“映射详细信息”窗口中。

        【讨论】:

        • 问题在于编辑实体名称和属性,而不是基础 SQL 表和列。对不起,如果我的问题有点不清楚。也许我所做的甚至没​​有意义。
        【解决方案4】:

        可以轻松地编辑名称...只需单击“类图”中的名称(当已选择项目时)或中的表格表示edmx 文件并键入新名称。如果单击文本时文本没有被选中和编辑,您可以按 F2,标准的 Windows 键来重新命名对象。注意:您不能在映射窗口中编辑名称。

        编辑名称后,您可以右键单击实体并选择“从模型生成数据库...”选项以更新数据库中的名称。

        另外,请参阅this post 了解更多信息。

        【讨论】:

        • 这不会编辑映射,它只会更改导航属性名称。
        【解决方案5】:

        这是适用于 VS 2010 的解决方案。如果您重命名条目,然后运行“从模型生成数据库...”两次。在第一次运行中,映射被调整,但你仍然得到一个(让我说“编译器”)错误。第二次运行,一切正常。

        我只测试了两次。完美运行。

        【讨论】:

          猜你喜欢
          • 2012-07-24
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2011-10-02
          • 2017-04-30
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多