gpt4 book ai didi

c# - 不同的模型从同一数据库的不同表中获取数据 ASP.NET MVC 4

转载 作者:行者123 更新时间:2023-12-02 09:22:43 26 4
gpt4 key购买 nike

我正在做有关微软电影的教程来学习ASP.NET MVC4。如果可能的话,我想要更多信息。

我现在的页面是http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/adding-a-model .

它说要在电影类中添加这个类

public class MovieDBContext : DbContext
{
public DbSet<Movie> Movies { get; set; }
}

然后创建一个新的连接字符串

  <add name="MovieDBContext" 
connectionString="Data Source=(LocalDB)\v11.0;AttachDbFilename=|DataDirectory|\Movies.mdf;Integrated Security=True"
providerName="System.Data.SqlClient"
/>

这是为了获取电影信息。

但是我的问题如下。例如,如果我们在数据库中有两张表,一张用于电影,一张用于 Actor 。我们想要获取这两个表的数据,我们应该创建两个不同的模型,对吧?但我们只会使用一个数据库(连接字符串)。那么,我们如何才能说 Actor 模型将从类型转换中获取数据,电影模型从电影表中获取数据,但两者具有相同的连接字符串?

编辑:

假设在创建项目之前我已经有了两个数据库表。那么我如何让我的模型指向它们呢?

最佳答案

创建数据库时,会添加元数据,并且 EntityFramework 知道每个模型要引用哪个表。连接字符串是相同的,因为一个数据库中有两个表,连接字符串是数据库级别的连接信息,而不是从表数据到模型的转换。

本质上,代码首先的基础知识是一个模型 = 一个表。您可以执行诸如外键关系之类的操作,因此如果您的 Actor 模型引用电影,也会创建底层数据结构来匹配。

编辑:如果您对创建 DBContext 的方式感到困惑,您可以创建一个包含两种 DBSet 类型的 DBContext 类,并且仅使用一个连接字符串,例如:

public class ApplicationDBContext : DbContext
{
public DbSet<Movie> Movies { get; set; }
public DBSet<Actor> Actors { get; set; }
}

关于c# - 不同的模型从同一数据库的不同表中获取数据 ASP.NET MVC 4,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21272033/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com