0

我正在使用 Visual Studio 并开发基于 MVC 的应用程序。我正在尝试将一些表格添加到我的模型中。我使用了“从数据库更新模型”选项。新表出现在我的 edmx 文件中。我已经重建了我的解决方案,但是缺少新表的类。每次我想添加新表时,有什么技巧可以生成类吗?还是我必须手动完成?当我将“代码生成策略”设置为“默认”时,我收到了数百个与此类似的错误Error 117 The type 'Mvc4.Models.DPR_MM' already contains a definition for 'DPR_TS'
我已经删除了整个模型。在搜索整个解决方案时,DPR_MM我得到了以下结果:查找所有“DPR_MM”、子文件夹、查找结果 1、整个解决方案、“”

  C:\\Mvc4\Controllers\HomeController.cs(41):                    var DPR_MM = from d in ctx.DPR_MM
  C:\\Mvc4\Controllers\HomeController.cs(45):                    var arr = new object[DPR_MM.Count()];
  C:\\Mvc4\Controllers\HomeController.cs(47):                    foreach (var d in DPR_MM)
  C:\\Mvc4\Models\Model1.edmx(9):          <EntitySet Name="DPR_MM" EntityType="Model.Store.DPR_MM" store:Type="Tables" Schema="QF" />
  C:\\Mvc4\Models\Model1.edmx(45):        <EntityType Name="DPR_MM">
  C:\\Mvc4\Models\Model1.edmx(366):          <EntitySet Name="DPR_MM" EntityType="Model.DPR_MM" />
  C:\\Mvc4\Models\Model1.edmx(389):        <EntityType Name="DPR_MM">
  C:\\Mvc4\Models\Model1.edmx(715):          <EntitySetMapping Name="DPR_MM">
  C:\\Mvc4\Models\Model1.edmx(716):            <EntityTypeMapping TypeName="Model.DPR_MM">
  C:\\Mvc4\Models\Model1.edmx(717):              <MappingFragment StoreEntitySet="DPR_MM">
  C:\\Mvc4\Models\Model1.edmx.diagram(8):        <EntityTypeShape EntityType="Model.DPR_MM" Width="1.5" PointX="0.75" PointY="0.75" IsExpanded="true" />
  Matching lines: 11    Matching files: 3    Total files searched: 168

所以我没有看到任何 DPR_MM 类。我做错了什么?

4

1 回答 1

0

编辑

既然我知道您遇到了错误,请查看生成的代码(您甚至可以对您的类 DPR_MM 进行解决方案搜索以查找该类的所有实例)。我猜你的项目中有一个类 Mvc4.Models.DPR_MM 已经将 DPR_TS 作为成员,并且代码生成会看到它并且不会生成另一个类,如下所示:

public partial class DPR_MM : EntityObject
{
    public global::System.Int32 DPR_TS
    {
    ...
    }
}

public partial class DPR_MM : EntityObject
{
    //maybe code generation fails because it doesn't want to do this a second time knowing it would be ambiguous 
    public global::System.Int32 DPR_TS  
    {
    ...
    }
}

除非存在某些数据库或命名空间问题,否则您应该始终能够生成新模型,因此请确保您没有像 @Mamu 所说的那样放置额外的文件。或者你可以谷歌它:
首先点击
另一个答案





初步答案

做一个构建。然后,您应该根据“从数据库更新模型”时选择的表查看所有新类(显然,“从数据库更新模型”时必须选择新表)

于 2012-12-11T15:53:09.493 回答