小白编写C#项目主要为连接数据库和简单画图

基于vs2012

2019-10-03

版本不支持直接在解决方案中下载,使用数据库需下载MySql.Data   在程序包管理器控制台里输入 

Install-Package MySql.Data -Version 6.7.9

存取数据库内容使用Dapper,版本不支持,在程序包管理器控制台里输入

Install-package dapper -Version 1.50.2

获取的数据(一行)如果包含多种类型(每列数据类型不都一样),可新建类库,把类库的名字作为新类型进行存取,用到了C#的get和set

private string apiTag;
private int vvalue;
public String ApiTag
        {
            get
            {
                return apiTag;
            }
            set
            {
                apiTag = value;
            }
        }

        public int Value
        {
            get
            {
                return vvalue;
            }
            set
            {
                vvalue = value;
            }
        }

可直接将List类型作为控件等的数据来源

dgHistory.ItemsSource = list;
AngleYValues = new List<int>();
AngleYValues = dataMapper.GetValueList("AngleY");
Values = new ChartValues<int>(AngleYValues),

更新数据需使用线程,创建子线程

Thread childThread1 = new Thread(updateThread);
            childThread1.Start();//子线程开始

其中updateThread为子线程要做的事件

public void updateThread()
        {           
            while (true)
            {
                Load();// 加载数据
                Thread.Sleep(4000);//线程停止4000ms
            }
        }

更新控件和其中的数据需回到主线程(可以这样理解,其实不是的)

dgHistory.Dispatcher.BeginInvoke(new Action(() =>   //更新数据和控件要回到主线程
            {
                dgHistory.ItemsSource = list;//不可放到外面
                dgHistory.Items.Refresh();
            }));

连接数据库用到的语句只有密码和数据库名称需要改(也就是后两个参数),注意不是表名

public static readonly string connectionString = "server=localhost;User Id=root;Password=123456;Database=sunpower;";

相关文章

项目中经常遇到CSV文件的读写需求,其中的难点主要是CSV文件...
简介 本文的初衷是希望帮助那些有其它平台视觉算法开发经验的...
这篇文章主要简单记录一下C#项目的dll文件管理方法,以便后期...
在C#中的使用JSON序列化及反序列化时,推荐使用Json.NET——...
事件总线是对发布-订阅模式的一种实现,是一种集中式事件处理...
通用翻译API的HTTPS 地址为https://fanyi-api.baidu.com/api...