【问题标题】:ASP.net Database connection to remote SQL server DB not in 'App_Data'ASP.net 数据库连接到不在“App_Data”中的远程 SQL 服务器数据库
【发布时间】:2014-12-18 02:01:36
【问题描述】:

ASP.NET 世界的新手。我在“Web.config”(Visual Studio 2013)中的默认连接字符串最初连接到本地数据库:

<add name="DefaultConnection" connectionString="Data Source=(LocalDb)\v11.0;AttachDbFilename=|DataDirectory|\aspnet-dbTest-20141022090046.mdf;Initial Catalog=aspnet-dbTest-20141022090046;Integrated Security=True" providerName="System.Data.SqlClient"/>

我一直在阅读有关与远程服务器 (SQL Express) 的连接的信息。我能够将默认连接字符串修改为以下内容:

<add name="DefaultConnection" connectionString="Data Source=MYSERVERNAME\SQLEXPRESS;
  Initial Catalog=myDatabase;
  Integrated Security=True;
  User ID=MYUSERNAMEISDIFFERENT;
  Password=MYUSERPASSWORDISDIFFERENT"
  providerName="System.Data.SqlClient"/>

内部表(非 ASP.NET)不可用作与之交互的对象,并且我不将数据库视为“App_Data”文件夹中的资源。
这正常吗?
我是否应该包含一些“AttachDbFileName=|DataDirectory|” ?

我可以连接并登录(在构建 ASP.Net 表之后,我确实在数据库中的 MS SQLServer Management Studio 中看到了登录名和新的“用户”帐户。

安迪

【问题讨论】:

    标签: asp.net connection server


    【解决方案1】:

    您想使用配置管理器访问连接字符串:

    var connectionString = ConfigurationManager.ConnectionStrings["DefaultConnection"].ConnectionString;
    

    这可以用于数据库连接,例如:

    var dt = new DataTable();
    using (var con = new SqlConnection(connectionString))
    {
        var command = new SqlCommand("SELECT * FROM table", con);
    
        con.Open();
        dt = command.ExecuteQuery();
    }
    

    'dt'将填充提供给SqlCommand对象的查询结果

    还有其他连接方式,但通常这种方式最容易上手。

    【讨论】:

    • 您甚至可以摆脱con.Close(),因为using 块通过调用Dispose() 来确保销毁DbConnection 对象
    • 认为做到了。我在系统中放入了类似的代码,它运行没有错误。 (我看不到结果,但如果它不起作用,它就不会运行)。
    • @Izzy 好声音!编辑答案
    【解决方案2】:

    山姆的答案对我有用...

    但是,正如我发现的任何事情一样,知道正确的术语和/或单词会使过程变得更加容易。

    我所经历的所有在线培训都是“代码优先”示例。我试图获取我所学信息的方式是这样的。我想去“数据库优先”

    此链接概述了我想做的所有事情: http://www.asp.net/mvc/tutorials/mvc-5/database-first-development/creating-the-web-application

    也就是说,我有 Visual Studio 2013,以及 SQLServerExpress 中的现有数据库 (AdventureWorks 2012)。

    再次感谢,我希望该链接对某人有所帮助..

    安迪

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-05-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多