如何在Visual Studio 2010中手动编辑ADO.NET中的表映射?

时间:2010-05-06 21:23:50

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

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

5 个答案:

答案 0 :(得分:4)

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

答案 1 :(得分: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键,即可。将在映射详细信息窗口中找到DataColumn4属性的右侧为空,但在左侧DataColumn4仍然存在。

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

    Remove--> <Property Name="DataColumn4" Type="nvarchar" MaxLength="255" />

  5. 重新启动visual studio,再次打开edmx,发现DataColumn4消失,我尝试连接数据库并操作数据,工作正常。

答案 2 :(得分:1)

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

答案 3 :(得分:1)

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

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

另请参阅this post了解详情。

答案 4 :(得分:0)

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

我刚试了两次。工作得很好。