1、Visual Studio 2017 安装
2、实现第一个WPF项目
Visual Studio API 中的一个入门项目 | 我的第一个 WPF 桌面应用程序
知识点:
1、ControlTemplate 窗体模板的作用?
2、//打開窗體
2.1、为什么调用 if (loginWin.ShowDialog() == true) 这一句话就会打开登录窗口?
ShowDialog(); 的作用
2.2、ShowDialog 与 DialogResult 之间的关系?
3、INotifyPropertyChanged 向客户端发出某一属性值已更改的通知 : 用法与作用?
4、ICommand 用法与作用?
5、MVVM模式结构是什么? 原理?
6、xaml是什么?
7、Model为什么实现INotifyPropertyChanged接口?
8、继承是什么?C# 为什么可以继承多个?
3、自己开发一个项目:Tourism
项目:旅游
目的:熟悉xaml,cs,学习C# wpf的增删改查,使用mysql
项目技术:WPF + MySql + MVVM模式
目录:
说明:
code : 创建 NotificationObject.cs
NotificationObject 继承了 INotifyPropertyChanged
command:创建RelayCommand.cs
RelayCommand 继承了ICommand
lange:语言
里面包含了每个界面的一些名称配置
mode:数据层
里面实体类,包含了数据库操作
ViewMode:逻辑层
页面数据逻辑处理,这里面的类主要用来实现之前xaml.cs中的数据逻辑
Views:视图
窗口、页面等试图在这里创建
App.xaml程序入口
实现效果:
学习记录于 2018-06-07,分割线
MySql数据集成
1、安装MySql服务端
2、解压mysql-8.0.11-winx64.zip
mysql-8.0.11-winx64 名称改为:mysql
3、在MySql文件夹下新建 my.ini 文件
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
[mysqld]
#设置3306端口
port = 3306
# 设置mysql的安装目录
basedir="D:\\mysql"
# 这里地址记得加引号,不然不能正常启动。
# 设置mysql数据库的数据的存放目录
datadir="D:\\mysql\\data"
# 允许最大连接数
max_connections=200
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
这里需要注意
basedir=路径为mysql所在的目录
datadir=路径为mysql所在的目录
4、环境变量配置
5、Win+R 或者 打开运行,进入cmd,找到mysql所在bin目录
6、MySql安装配置
-
MySQL安装目录中的bin目录,然后输入如下命令回车
执行这一句后会在mysql目录下创建一个data文件夹
mysqld --initialize-insecure --user=mysql
-
安装MySql
执行这一句后会在data文件夹下安装一些文件
mysqld install
-
启动MySql服务
启动Mysql服务,mysql是服务名称,可以到服务中去查看
net start mysql
到此,MySql服务已经安装并启动了。分割线
到这里我们还只是用到了mysql-8.0.11-win64.zip
接下来就是安装上面三个msi安装包,安装很简单,按提示进行安装就行。安装后:
那么,再接下来,我们来配置(数据源ODBC),这里的配置会在C#中连接数据库时用到。
这里请记住我们配置了一个数据源名称叫做 MySql 的数据源,上面的data source name:可以换成其他的
接下来就是在VS 项目中引用MySql
打开工具中的 连接到数据库 , MySql Database就是我们刚刚安装数据库配置
添加Mysql的引用
using MySql.Data.MySqlClient;
using System;
using System.Data;
using Tourism.Code;
namespace Tourism.Mode
{
class LoginUserMode : NotificationObject
{
string _LoginName;
string _LoginPassWord;
public string LoginName { get => _LoginName; set => _LoginName = value; }
public string LoginPassWord { get => _LoginPassWord; set => _LoginPassWord = value; }
public LoginUserMode GetLoginUserInfo(String name,String pwd)
{
LoginUserMode loginUser = new LoginUserMode();
string MyConString = "Server=localhost;" + "DATABASE=tourism;" + "UID=root;" + "PWD=;";
MySqlConnection conn = new MySqlConnection(MyConString);
try
{
conn.Open();
String getSql = "select * from A_LOGIN_USER where login_name='" + name + "' and password='" + pwd + "'";
MySqlCommand command = new MySqlCommand(getSql, conn);
MySqlDataReader reader = command.ExecuteReader(CommandBehavior.CloseConnection);
while (reader.Read())
{
Console.WriteLine(reader[0] + ":" + reader[1] + ":" + reader[2] + ":" + reader[3] + ":" + reader[4]);
}
}
catch (Exception ex)
{
Console.WriteLine(ex.ToString());
}
finally
{
//conn.Close();
}
return loginUser;
}
}
}
到此MySql数据库配置算是完成了
学习记录于 2018-06-08,分割线