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

ado.net entity-framework visual-studio-2010

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

一般承认的答案

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


热门答案

我打开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 Window中找到右边的DataColumn4属性将为空,但在左侧DataColumn4仍然存在。

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

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

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




许可下: CC-BY-SA with attribution
不隶属于 Stack Overflow
这个KB合法吗? 是的,了解原因
许可下: CC-BY-SA with attribution
不隶属于 Stack Overflow
这个KB合法吗? 是的,了解原因