ASP.NET MVC与Sql Server建立连接

 

用惯了使用Entity Framework连接数据库,本篇就来体验使用SqlConnection连接数据库。


打开Sql Server 2008,创建数据库,创建如下表:

 

create table Product
(
    Id int identity(1,1) not null primary key,
    Name nvarchar(50) null,
    quantity nvarchar(50) null,
    Price nvarchar(50) null
    
)
go

 

点击Visual Studio中"工具"菜单下的"连接到数据库",选择"Microsoft SQL Server"作为数据源。

1

 

点击"继续"。

 

连接刚创建的数据库,点击"确定"。

2

 

打开"服务器资源管理器",如下:

3

 

右键"服务器资源管理器",点击"属性",复制连接字符串。并粘帖到Web.config中的connectionStrings节点下。

 

  <connectionStrings>
    <add name="DefaultConnection" connectionString="Data Source=PC201312021114;Initial Catalog=MVC;User ID=sa;Password=密码"
      providerName="System.Data.SqlClient" />
  </connectionStrings>

 

现在,需要一个处理连接的帮助类,如下:

 

  public class SqlDB
    {
        protected SqlConnection conn;
        //打开连接
        public bool OpenConnection()
        {
            conn = new SqlConnection(ConfigurationManager.ConnectionStrings["DefaultConnection"].ConnectionString);
            try
            {
                bool result = true;
                if (conn.State.ToString() != "Open")
                {
                    conn.Open();
                }
                return result;
            }
            catch (SqlException ex)
            {
                return false;
            }
        }
        //关闭连接
        public bool CloseConnection()
        {
            try
            {
                conn.Close();
                return true;
            }
            catch (Exception ex)
            {
                return false;
            }
        }
    }

 

创建TestController如下:

 

   public class TestController : Controller
    {
        private SqlDB _db = new SqlDB();
        //
        // GET: /Test/
        public ActionResult Index()
        {
            bool r = _db.OpenConnection();
            if (r)
            {
                return Content("连接成功");
            }
            else
            {
                return Content("连接失败");
            }
        }
    }

 

浏览Test/Index视图页,显示连接成功。

posted @   Darren Ji  阅读(19227)  评论(4编辑  收藏  举报
编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?

我的公众号:新语新世界,欢迎关注。

点击右上角即可分享
微信分享提示