C# web 链接数据库问题二三(一)

本文记录了作者在C# Webform银行管理项目中遇到的数据库链接问题。在项目实践中,作者发现大部分网上找到的方法无法实现登录界面的数据库连接,问题原因待进一步研究。目前,存取款和转账功能尚未完成,后续将继续更新。
摘要由CSDN通过智能技术生成

最近在做一个C# webform银行管理项目,由于刚接触,对其中数据库的了解还不太熟悉,特在此记录。


首先要加入这两个命名空间

using System.Data;
using System.Data.SqlClient;

在登录界面查了好多资料才完成,网上的大部分方法都不能实现,不知是什么原因,留待以后处理;

  string name = UserName.Text.Trim();
  string word = UserWord.Text.Trim();
  string Scon = @"Server=(local);uid=sa;Pwd=123456;DataBase=bankManagement";
  SqlConnection con = new SqlConnection(Scon);
  string sqlcheck = "select account from client";
  con.Open();
  SqlCommand check = new SqlCommand(sqlcheck, con);
  string sqlstring1 = "select* from client";
  SqlCommand cmd = new SqlCommand(sqlstring1, con);
  SqlDataReader sqlRead = cmd.ExecuteReader();
  while (sqlRead.Read())
                {
                    if (UserName.Text == sqlRead["account"].ToString())
                    {
                        if (UserWord.Text == sqlRead["password"].ToString())
                        {
                            Response.Write("<script>location.href='content.aspx';</script>");
                            //Response.Write("<script>alert('ss')</script>");
                        }
                    }
                }
  Response.Write("<script>alert('密码错误!')</script>");
  UserWord.Focus();
  con.Close();

然后用cookie传值的方式实现了两个页面的传值,正确地在第二个页面显示余额项

            HttpCookie cookie_name = new HttpCookie("name");
            cookie_name.Value =UserName.Text;
            Response.AppendCookie(cookie_name);
            Server.Transfer("content.aspx");
第一个页面的代码

            string Temp;
            Temp = Request.Cookies["name"].Value.ToString();
         /*   if (Temp == "admin")
            {
                Response.Write("<script>alert('Yeah!')</script>");
            }*/
            string Scon = @"Server=(local);uid=sa;Pwd=123456;DataBase=bankManagement";
            SqlConnection con = new SqlConnection(Scon);
            con.Open();
            string sqlstring = "select balance from client where account='"+Temp+"'";
            SqlCommand cmd = new SqlCommand(sqlstring, con);
            SqlDataReader ds = cmd.ExecuteReader();
            while (ds.Read())
            {
               // Response.Write("<script>alert('Yeah!')</script>");
                Label1.Text = ds["balance"].ToString();
                //Label1.Text = ds.GetString(0);
            }
            con.Close();
第二个页面的实现


后续的存取款、转账还未完成,留待下次记录。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 要在C# WebAPI中连接数据库,你需要采用以下步骤: 1. 首先,安装数据库提供程序(如SqlClient)。 2. 在WebAPI项目中添加连接字符串,该连接字符串应包含数据库服务器名称、数据库名称、用户名和密码。 3. 在WebAPI项目中创建一个类,该类将连接到数据库并执行查询或存储过程。 4. 在需要访问数据库的控制器中,创建一个类的实例,并调用该类中的方法以执行查询或存储过程。 下面是一个连接到SQL Server数据库的示例代码: ```csharp using System.Data.SqlClient; public class DataAccess { private readonly string _connectionString; public DataAccess(string connectionString) { _connectionString = connectionString; } public void ExecuteQuery(string query) { using (var connection = new SqlConnection(_connectionString)) { connection.Open(); using (var command = new SqlCommand(query, connection)) { command.ExecuteNonQuery(); } } } public SqlDataReader ExecuteReader(string query) { var connection = new SqlConnection(_connectionString); connection.Open(); var command = new SqlCommand(query, connection); return command.ExecuteReader(); } } ``` 在控制器中调用该类: ```csharp [ApiController] [Route("[controller]")] public class ProductsController : ControllerBase { private readonly string _connectionString; public ProductsController(IConfiguration configuration) { _connectionString = configuration.GetConnectionString("DefaultConnection"); } [HttpGet] public IEnumerable<Product> Get() { var dataAccess = new DataAccess(_connectionString); var reader = dataAccess.ExecuteReader("SELECT * FROM Products"); while (reader.Read()) { yield return new Product { Id = reader.GetInt32(0), Name = reader.GetString(1), Price = reader.GetDecimal(2) }; } } } ``` 在上面的代码中,我们在控制器中注入了一个 IConfiguration 对象,以获取连接字符串。然后,我们创建了一个 DataAccess 对象,并调用 ExecuteReader 方法来执行查询。最后,我们使用 SqlDataReader 对象来读取结果集。 ### 回答2: C是一种广泛使用的编程语言,由丹尼斯·里奇在1972年至1973年之间创建。它被设计成一种通用的编程语言,用于开发各种应用程序。C语言的设计目标是使程序员能够更好地控制计算机的硬件资源,同时具有高效性和可移植性。 C语言有很多特点和优势。首先,它是一种结构化的编程语言,使得程序的组织和维护更加容易。其次,C语言具有高效的执行速度和低内存消耗,这使得它在嵌入式系统和底层开发中得到广泛应用。此外,C语言还具有丰富的库函数和工具,使得程序开发更加便捷和高效。 与其他编程语言相比,C语言的学习曲线较为陡峭,需要掌握一些底层的概念和编程技巧。但一旦掌握了这些基础知识,就可以更好地理解和使用其他高级编程语言。因此,学习C语言对于计算机科学和软件工程领域的学生来说是非常重要的。 C语言在各个领域有广泛应用。它可以用于开发操作系统、网络协议、数据库管理系统等底层软件。同时,C语言也可以用于开发应用程序,如游戏、图形界面、金融软件等。许多著名的软件工具和系统也是使用C语言开发的。例如,UNIX操作系统、Linux内核、MySQL数据库等。 总的来说,C语言是一种重要的编程语言,具有广泛的应用范围和众多的优势。通过学习和掌握C语言,可以使我们更好地理解计算机的工作原理,培养编程思维和解决问题的能力,并为未来学习其他编程语言打下坚实的基础。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值