Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/9.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 使用MVC连接到数据库_Asp.net Mvc_Database - Fatal编程技术网

Asp.net mvc 使用MVC连接到数据库

Asp.net mvc 使用MVC连接到数据库,asp.net-mvc,database,Asp.net Mvc,Database,我有一个asp.net mvc应用程序,我需要连接到数据库。我看过一个教程视频,通过添加数据库连接使用向导连接到数据库,确定数据库并添加模型,但我需要知道我是否可以使用连接字符串查询数据库或在数据库中调用过程 我需要任何教程或一步一步的文章,描述如何连接到数据库没有向导和调用过程和查询表 提前感谢,我是MVC的初学者是的,你可以(google ado.net提供ado.net上的教程),但这不是MVC的方式。MVC的方法是使用某种ORM(对象关系映射),如NHibernate、Subsonic或

我有一个asp.net mvc应用程序,我需要连接到数据库。我看过一个教程视频,通过添加数据库连接使用向导连接到数据库,确定数据库并添加模型,但我需要知道我是否可以使用连接字符串查询数据库或在数据库中调用过程

我需要任何教程或一步一步的文章,描述如何连接到数据库没有向导和调用过程和查询表


提前感谢,我是MVC的初学者

是的,你可以(google ado.net提供ado.net上的教程),但这不是MVC的方式。MVC的方法是使用某种ORM(对象关系映射),如NHibernate、Subsonic或Linq for SQL。

您可以像以前一样将连接字符串放入配置中

您也可以像从任何.Net应用程序调用过程一样调用过程@svinto关于使用ORM的建议是另一种做事方式,也很值得一看。许多ASP.NETMVC的好例子都使用了ORM技术

如果您不想走这条路,您可能会受益于创建一个独立的类库项目,从MVC应用程序中引用该项目。您的类库项目可以充当您的数据访问层(DAL),您可以在其中处理db调用等


然后,您的控制器可以调用DAL和处理方法来填充视图的实体。

Ahmy,我认为最好的建议是在开始使用MVC框架进行开发之前,先了解一下MVC模式和领域驱动设计背后的原则

具体来说,请查看存储库模式等

在所有Asp.net MVC都基于webforms之后,您仍然可以向块中的web.config添加连接字符串,并像在webforms项目中那样访问它们。如果你按照预期的方式使用MVC,你可能不会真的想这么做,因为这都是关于关注点的分离

有一些很棒的介绍。值得一看的例子

如何在没有向导和调用过程以及查询表的情况下连接到DB

要调用过程(在这里它将不返回结果,只需执行一些操作):


我不太愿意回答这个问题,但是您看到的每个视频都可能使用OR/M生成模型和DAL。生成的DAL可能会封装您对所询问的存储过程的调用

问题是——这就是为什么你没有得到你想要的答案——每个OR/M都有不同的方法从数据库中检索数据并将数据插入数据库。如果使用实体框架、Linq到SQL、亚音速、NHibernate或任何其他OR/M,那么使用OR/M从DB检索数据的方式将有所不同

所以,问题是你。您使用的是OR/M吗?如果是,哪一个?如果没有,则将使用标准ADO.NET调用检索和存储数据。这也反映在我对您原始问题的评论中。

尝试下载,或者更好。。。迭代1(本教程直接回答您的问题)。这些应该会让您了解如何处理数据库访问。不过,我不建议你去看Oxite或MS店面之类的东西,因为它们有点复杂


具体回答您的问题:连接字符串(如ASP.NET中的连接字符串)可以放在web.config中,也可以硬编码到应用程序中

使用ORM或某种中间件不是MVC的方式,而是懒惰的方式(我使用它们是因为我不想编写常规的ado.net)。你搞错了,我需要的是知道连接字符串放在哪里。它像过去一样放在web.config中吗?其次,我如何从模型中调用一个过程并获得结果数据?我不知道如何在mvc中做到这一点,也不知道如何访问数据库!!!你把我的问题搞错了,我在谷歌上搜索了这个问题,没有明确的答案,说明访问数据库的代码应该放在哪里,以及如何才能在视图中显示结果数据。谢谢格林纳达先生,但是在将连接字符串放进web.config之后,我如何才能从模型中调用我的过程?我是否必须添加一个包含调用过程的方法的类?如果我的想法是正确的,并且我已经在model文件夹中创建了一个类,那么我如何让控制器调用这个类并获取数据并将其传递给要显示的视图?真的,我太困惑了,一开始我讨厌MVC,因为在这个话题上没有太多的帮助。如果你想享受生活中简单的一面,你真的应该按照@svinto的帖子中的建议去做。不,我需要知道如何从模型中调用过程。我创建一个包含方法call DB procedures的类的想法对吗?请我需要明确的帮助不要笑我的工作崩溃了,我不知道如何恢复希望你明白我需要什么没有人嘲笑你的工作。如果您想从MVC调用存储过程,只需在控制器或单独的程序集中创建一些帮助器方法即可。在“模型”文件夹中创建一些模型并填充它们(在控制器中或从控制器调用的助手程序集中)。感谢您的关注,我没有得到这个问题的明确解决方案,我需要调用过程如何才能做到这一点?我把它放在控制器里,那么模型需要什么呢?我需要一个例子或一个应用程序来实现这一点,因为我不需要讨论MVC我需要一个代码你能帮我吗?我已经从那里下载了视频并观看了我在问题中提到的视频,但他们通过向导连接到DB,创建DB并添加带有记录的表并查询这些记录,但我需要的是数据库已经存在,我需要调用过程,不知道如何在模型中这样做,以及如何从控制器中的模型获取数据以将其放入适当的视图中??????感谢您的关注,希望您能回复我,因为我对MVC的厌烦程度可能比
using (SqlConnection connection = new SqlConnection(connectionString))
{
    connection .Open();
    using(SqlCommand command = connection.CreateCommand(nameofthestoredprocedure))
    {
      command.CommandType = CommandType.StoredProcedure;
      command.Parameters.AddWithValue("@someparameter", somevalue);
      maCommande.ExecuteNonQuery();
    }
}