Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/image-processing/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net mvc 4 自定义表名ASP MVC 4_Asp.net Mvc 4 - Fatal编程技术网

Asp.net mvc 4 自定义表名ASP MVC 4

Asp.net mvc 4 自定义表名ASP MVC 4,asp.net-mvc-4,Asp.net Mvc 4,我以前在数据库中创建了一些表,希望映射到一些模型类: "SISTEMA.Voyages" => public class Voyage "SISTEMA.Puerto" => public class Port 我知道在ASP.MVC4实体框架中,这可以通过两种方式之一实现。然而,对于这两个问题,我都遇到了一些我不知道如何解决的错误 Voyage.cs中的第一个: [Table("SISTEMA.Voyages")] public class Voyage 或Context.c

我以前在数据库中创建了一些表,希望映射到一些模型类:

"SISTEMA.Voyages" => public class Voyage
"SISTEMA.Puerto"  => public class Port
我知道在ASP.MVC4实体框架中,这可以通过两种方式之一实现。然而,对于这两个问题,我都遇到了一些我不知道如何解决的错误

Voyage.cs中的第一个:

[Table("SISTEMA.Voyages")]
public class Voyage
或Context.cs中的第二个:

public class ApplicationEntities : DbContext
{
  protected override void OnModelCreating(DbModelBuilder modelBuilder)
  {
    modelBuilder.Entity<Voyage>().ToTable("SISTEMA.Voyages");
  }
}
在第二次出现这个错误之前,我没有预料到,因为我假设这是一个配置问题,让我非常困惑:

The model backing the 'ApplicationEntities' context has changed since the database was created. Consider using Code First Migrations to update the Database.
这段历史记录在哪里

作为记录,我习惯于在Rails中通过键入以下内容来处理此类问题:

class Voyage
    self.table_name = "SISTEMA.Voyages"
end

我对C#/ASP.NET不是很熟悉。除非有人告诉我下一个小时要查找的内容,否则只发布这些内容。

对于第一种方法,您缺少表属性的using指令,请将其添加到您的类中:

using System.ComponentModel.DataAnnotations;
对于第二种方法,我猜您的模型中发生了一些变化,现在它建议首先使用代码来更新数据库。当您运行应用程序时,它会首先访问数据库,它会验证您的模型是否与模式匹配——如果不匹配,则会出现此错误

我建议查看这些链接中的一些,以获得有关EF/Code First/Migrations入门的帮助—它们非常方便





对于第一种方法,您缺少表属性的using指令,请将其添加到类中:

using System.ComponentModel.DataAnnotations;
对于第二种方法,我猜您的模型中发生了一些变化,现在它建议首先使用代码来更新数据库。当您运行应用程序时,它会首先访问数据库,它会验证您的模型是否与模式匹配——如果不匹配,则会出现此错误

我建议查看这些链接中的一些,以获得有关EF/Code First/Migrations入门的帮助—它们非常方便




请添加:

使用System.ComponentModel.DataAnnotations.Schema

请添加:


使用System.ComponentModel.DataAnnotations.Schema

对于第一个版本,您是否添加了using指令?(使用System.ComponentModel.DataAnnotations)我刚刚做了。谢谢我现在得到了第二种情况下发生的错误:(目前正在研究迁移,但我仍然感到困惑…阅读后更接近解决方案:基本上我使用System.Data.Entity添加了
;在
Global.asax中添加了
并且还添加了
数据库.setInitIlizer(null);
现在我只需要正确的语法,因为它被解释为
dbo.SISTEMA.Voyages
而不是
SISTEMA.Voyages
您是否看到第一个版本添加了using指令?(使用System.ComponentModel.DataAnnotations)我刚刚做了。谢谢。我现在得到了第二种情况下发生的错误。:(现在正在研究迁移,但我仍然感到困惑…阅读后更接近解决方案:基本上我使用System.Data.Entity添加了
;在
Global.asax中添加了
数据库.SetInitilizer(null)现在我只需要正确的语法,因为它被解释为
dbo.SISTEMA.Voyages
而不是
SISTEMA.Voyages
你看到了吗