当前位置: 首页 > news >正文

windows 开发

文章目录

  • 环境搭建
    • 数据库
      • 关键修改说明:
      • 在代码中使用该连接字符串:
      • 注意事项:
      • 实际使用

  • 都说几天创造一个奇迹,现在是真的这样了,Just do it!

环境搭建

数据库

  • 需要下载这个SQL Server数据库,然后每次Visual Studio连接的时候,需要我们本地就运行这个SQL Server

在这里插入图片描述

  • 视图->SQL Server 对象资源管理器
    在这里插入图片描述

  • 对于你想要连接的数据库,属性->连接字符串

在这里插入图片描述

  • 然后就是去配置App.config文件

需要在现有的 app.config 文件中添加数据库连接字符串。以下是修改后的完整配置文件内容:

<?xml version="1.0" encoding="utf-8" ?>
<configuration><startup> <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.7.2" /></startup><connectionStrings><add name="FruitAppConnection" connectionString="Data Source=GWJ;Initial Catalog=fruitapp;Integrated Security=True;Connect Timeout=30;Encrypt=False;Trust Server Certificate=True;Application Intent=ReadWrite;Multi Subnet Failover=False" providerName="System.Data.SqlClient" /></connectionStrings>
</configuration>

关键修改说明:

  1. 添加 <connectionStrings> 节点

    • <configuration> 节点下新增该节点,用于存放数据库连接信息。
  2. 配置连接字符串

    • name="FruitAppConnection":自定义连接字符串的名称,在代码中通过此名称引用。
    • connectionString:使用你提供的完整连接字符串。
    • providerName="System.Data.SqlClient":指定使用 SQL Server 数据提供程序。

在代码中使用该连接字符串:

在 C# 代码中,可以通过以下方式获取并使用这个连接字符串:

using System.Configuration; // 需要添加对 System.Configuration 的引用// 获取连接字符串
string connStr = ConfigurationManager.ConnectionStrings["FruitAppConnection"].ConnectionString;// 使用 SqlSugar 示例
var db = new SqlSugarClient(new ConnectionConfig
{ConnectionString = connStr,DbType = DbType.SqlServer,IsAutoCloseConnection = true
});

注意事项:

  • 确保 SQL Server 实例名称(Data Source=GWJ)与你本地环境一致。
  • 如果使用 Windows 身份验证(Integrated Security=True),确保运行程序的用户账户有权限访问 fruitapp 数据库。
  • 如果数据库需要特殊权限,可改用 SQL Server 身份验证(添加 User IDPassword 参数)。

实际使用

  • 实际上,我们在具体的.cs文件对于数据库进行操作的时候,还需要引入这个System.Data.SqlClient命名空间,以便使用SQL Server数据库连接和操作的相关类
using System;
using System.Configuration;
using System.Data.SqlClient;
using System.Windows.Forms;namespace appfruit
{public partial class LoginForm : Form{public LoginForm(){InitializeComponent();}private void btnLogin_Click(object sender, EventArgs e){string username = txtUsername.Text;string password = txtPassword.Text;// 从 App.config 中读取数据库连接字符串string connectionString = ConfigurationManager.ConnectionStrings["FruitAppConnection"].ConnectionString;using (SqlConnection connection = new SqlConnection(connectionString)){try{// 打开数据库连接connection.Open();// 编写 SQL 查询语句,假设用户信息存储在名为 Users 的表中string query = "SELECT COUNT(*) FROM Users WHERE Username = @Username AND Password = @Password";SqlCommand command = new SqlCommand(query, connection);command.Parameters.AddWithValue("@Username", username);command.Parameters.AddWithValue("@Password", password);// 执行查询并获取结果int count = (int)command.ExecuteScalar();if (count > 0){MessageBox.Show("登录成功!");this.DialogResult = DialogResult.OK;this.Close();}else{MessageBox.Show("用户名或密码错误,请重试。");}}catch (Exception ex){MessageBox.Show("数据库连接或查询出错:" + ex.Message);}}}}
}

相关文章:

  • 吴恩达机器学习笔记(2)—单变量线性回归
  • 10.OpenCV—联合QT界面显示
  • Spring Boot 自动配置原理深度解析与自定义 Starter 实战
  • 3.1.2_栈的顺序存储实现
  • Nature Machine Intelligence 北京通研院朱松纯团队开发视触觉传感仿人灵巧手,实现类人自适应抓取
  • 深度解析Vue.js组件开发与实战案例
  • JavaSE超详细笔记-网络编程篇-基于黑马
  • evo工具
  • 【Git】使用 SSH 协议 解决 Git 推送失败问题
  • OPPO闹钟失灵:用户信任崩塌,市场地位岌岌可危
  • LangChain面试内容整理-知识点12:检索器(Retriever)接口与实现
  • Python开发功能实用
  • Android平台如何高效移动RTMP|RTSP直播流的录像文件?
  • 软死锁的检测--看门狗
  • uniapp打包报错
  • 渲染学进阶内容——机械动力的渲染系统(2)
  • 一文详解前缀和:从一维到二维的高效算法应用
  • 历史数据分析——贵州茅台
  • [学习] FIR多项滤波器的数学原理详解:从多相分解到高效实现(完整仿真代码)
  • 浏览器 报502 网关错误,解决方法2
  • 网站建设我们的优势/友链交易交易平台
  • 网站建设推广岗位/关键词挖掘机爱站网
  • 没备案的网站/推广网站公司
  • 上海制作企业网站/爱站网官网查询域名
  • 可以做免费广告的网站有哪些/网站收录查询系统
  • 网站开发完后部署到网上/做网站的公司有哪些