【问题标题】:How do I connect to an existing database in ASP.NET MVC?如何连接到 ASP.NET MVC 中的现有数据库?
【发布时间】:2011-02-11 18:32:25
【问题描述】:

我刚刚开始学习 C# 和 ASP.NETMVC,但我发现的每个示例都将数据库放在 App_Data 文件夹中。我不想这样做。

我想创建一个新版本的 Nerd Dinner 并将连接字符串移动到 web.config,但我找不到任何有关如何执行此操作的示例。我的数据库名为 NerdDinner,我使用的是 SQL Server Express。

将新连接字符串添加到我的 Web 配置的正确语法是什么?这对创建 LINQ to SQL 类有影响吗?

【问题讨论】:

    标签: c# sql-server asp.net-mvc


    【解决方案1】:

    当我忘记如何编写连接字符串时,我总是去http://www.connectionstrings.com/

    标准安全 SQL Server 2008

    Data Source=myServerAddress;Initial Catalog=myDataBase;User Id=myUsername;Password=myPassword;

    这是 MSDN 上关于How to: Read Connection Strings from the Web.config 的文章。

    Web.config 的顶部几乎有一个部分,称为连接字符串,它可能看起来像这样:

    <connectionStrings>
      <add 
        name="NorthwindConnectionString" 
        connectionString="Data Source=serverName;Initial 
        Catalog=Northwind;Persist Security Info=True;User 
        ID=userName;Password=password"
        providerName="System.Data.SqlClient"
      />
    </connectionStrings>
    

    不过,我建议您也查看实体框架,它是您的代码和数据库之间的抽象,它可以更轻松地处理数据库中的“对象”。你可以找到ADO.NET Entity Framework here的介绍。但首先,您应该专注于使用顶部的信息建立和运行与数据库的连接。

    【讨论】:

    • @Filip Ekberg 但是如果我连接到现有数据库,我不需要添加模型类,对吗?
    • @Srcee,不,你永远不需要添加模型类,但它最终简化了一些事情。
    【解决方案2】:

    让您的上下文“指向” web.config 文件中的 connextionsStrings 行的另一种方法是尝试此构造函数。

    public class MainDB : DbContext
    {
        public MainDB() : base ("name=DefaultConnection")
        { 
        }
    
        public DbSet<User> Users { get; set;}
    }
    

    然后在web.config文件中将名字改为DefaultConnection。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-02-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-07-07
      • 2019-10-12
      • 1970-01-01
      相关资源
      最近更新 更多