简单的物流项目实战,WPF的MVVM设计模式(三)
往Services文件里面添加接口以及实现接口
IUserService接口
List<User> GetAllUser();

GetUserService类

ConnectToDatabase connect = new ConnectToDatabase();
ConnectObject connectObject = new ConnectObject();
public List<User> GetAllUser()
{
connectObject.SQLRead = "select * from User";
List<User> users = new List<User>();
SQLiteCommand command = new SQLiteCommand(connectObject.SQLRead, connect.SQLiteConnections);
SQLiteDataReader reader = command.ExecuteReader();
while (reader.Read())
{
User user = new User();
user.UserAccount = reader["UserAccount"].ToString();
user.Password = reader["Password"].ToString();
users.Add(user);
}
return users;
}
IRegisteredService接口
User InsertUser(string useraccount, string password);

实现类InsertRegisteredService
ConnectToDatabase connect = new ConnectToDatabase();
ConnectObject connectObject = new ConnectObject();
User insertuser = new User();
public User InsertUser(string useraccount, string password)
{
//User insertuser = new User();
connectObject.SQLInsert = "insert into User (UserAccount,Password) values('" + useraccount + "','" + password + "')";
SQLiteCommand command = new SQLiteCommand(connectObject.SQLInsert, connect.SQLiteConnections);
command.ExecuteNonQuery();
insertuser.Password = password;
insertuser.UserAccount = useraccount;
return insertuser;
}

IExpressService接口
Express GetExpressData();

GetExpressService实现类
ConnectToDatabase connect = new ConnectToDatabase();
ConnectObject connectObject = new ConnectObject();
List<Express> expresses = new List<Express>();
public Express GetExpressData()
{
connectObject.SQLRead = "select * from Express";
SQLiteCommand command = new SQLiteCommand(connectObject.SQLRead, connect.SQLiteConnections);
SQLiteDataReader reader = command.ExecuteReader();
Express expresses = new Express();
while (reader.Read())
{
expresses.Province = reader["Province"].ToString();
expresses.City = reader["City"].ToString();
expresses.Area = reader["Area"].ToString();
expresses.Street = reader["Street"].ToString();
expresses.UserName = reader["UserName"].ToString();
expresses.PhoneNumber = reader["PhoneNumber"].ToString();
expresses.CteateTime = reader["CteateTime"].ToString();
}
return expresses;
}

ICreateExpressService接口
Express InsertExpress(string province, string city, string area, string streat, string username, string phonenumber, string createtime);

InsertExpressService实现类

ConnectToDatabase connect = new ConnectToDatabase();
ConnectObject connectObject = new ConnectObject();
/// <summary>
///
/// </summary>
/// <param name="province">省份</param>
/// <param name="city">城市</param>
/// <param name="area">区域</param>
/// <param name="streat">街道</param>
/// <param name="username">用户名</param>
/// <param name="phonenumber">手机号码</param>
/// <param name="createtime">创建时间</param>
/// <returns></returns>
public Express InsertExpress(string province, string city, string area, string streat, string username, string phonenumber, string createtime)
{
Express express = new Express();
connectObject.SQLInsert = "insert into Express(province,city,area,street,username,phonenumber,cteateTime) values('" + province + "','" + city + "','" + area + "','" + streat + "','" + username + "','" + phonenumber + "','" + createtime+ "')";
SQLiteCommand command = new SQLiteCommand(connectObject.SQLInsert, connect.SQLiteConnections);
command.ExecuteNonQuery();
express.Province = province;
express.City = city;
express.Area = area;
express.Street = streat;
express.UserName = username;
express.PhoneNumber = phonenumber;
express.CteateTime = createtime;
return express;
}
服务层就先到这里,下一篇讲ViewModels。谢谢观赏。
简单的物流项目实战,WPF的MVVM设计模式(三)的更多相关文章
- 简单的物流项目实战,WPF的MVVM设计模式(一)
新建一个WPF项目,命名为WMS 然后分别新建文件夹,Data,Models,Views,ViewModels,Services,如下图所示 然后通过NuGet安装连个Nuget包,分别为SQLite ...
- 简单的物流项目实战,WPF的MVVM设计模式(五)
开始界面 <Grid> <Grid.RowDefinitions> <RowDefinition/> <RowDefinition/> <RowD ...
- 简单的物流项目实战,WPF的MVVM设计模式(四)
接下来写ViewModels 创建运单的ViewModel类 public class CreateExpressWindowViewModel: NotificationObject { priva ...
- 简单的物流项目实战,WPF的MVVM设计模式(二)
往Models文件添加一个类,ConnectObject /// <summary> /// 链接数据库字符串 /// </summary ...
- WPF使用MVVM(三)-事件转命令
WPF使用MVVM(三)-事件转命令 上一节介绍了WPF中的命令,可是仅仅介绍的是WPF框架给我们提供的点击命令,也就是用Command属性来绑定一个命令,用来响应按钮的点击行为!显然这是不够的,界面 ...
- Redis项目实战---应用及理论(三)---Jedis使用
Jedis即redis java客户端,源码地址:https://github.com/xetorthio/jedis pom配置: <dependency> <groupId ...
- 使用MVVM设计模式构建WPF应用程序
使用MVVM设计模式构建WPF应用程序 本文是翻译大牛Josh Smith的文章,WPF Apps With The Model-View-ViewModel Design Pattern,译者水平有 ...
- WPF系列教程——(二)使用Prism实现MVVM设计模式 - 简书
原文:WPF系列教程--(二)使用Prism实现MVVM设计模式 - 简书 本文假设你已经知道MVVM设计模式是什么,所以直接进入正题,今天我们就用Prism来实现WPF的MVVM设计模式,百度上关于 ...
- GraphQL + React Apollo + React Hook 大型项目实战(32 个视频)
GraphQL + React Apollo + React Hook 大型项目实战(32 个视频) GraphQL + React Apollo + React Hook 大型项目实战 #1 介绍「 ...
随机推荐
- dell笔记本 win10 下安装 ubuntu16.04 踩坑记录
硬件配置情况: dell笔记本-灵越-5577 —— I5七代(带有集显),8G内存条DDR4,GTX1050,128G固态硬盘,1T机械硬盘. 固态硬盘划分为3部分,100GB给win10的C盘,1 ...
- 【canvas学习笔记六】状态保存和变换
save()和restore() save() 保存当前状态,将当前canvas的状态存入栈中. restore() 恢复之前save的一个状态,将之前的状态从栈中弹出. 保存的当前状态包含以下信息: ...
- 【商业智能VS人工智能】
什么是智能? 从感觉到记忆到思维这一过程,称为“智慧”,智慧的结果就产生了行为和语言,将行为和语言的表达过程称为“能力”,两者合称“智能”,将感觉.去记.回忆.思维.语言.行为的整个过程称为智能过程, ...
- (转载)FM 算法
(转载)FM算法 https://zhuanlan.zhihu.com/p/33184179
- [LeetCode]-algorithms-Median of Two Sorted Arrays
There are two sorted arrays nums1 and nums2 of size m and n respectively. Find the median of the two ...
- leetcode-mid-backtracking -22. Generate Parentheses-79 Word Search -NO
mycode 错误,因为借鉴了Number of Islands问题中的方法,导致在for循环中即使已经出现了答案,也还会继续遍历.但是两个题目的不同时,island需要找出所有的情况,这个题只需 ...
- MVC简易分页(Razor)
一.无数据提交 第一步,建立一个 Controller命名为PageIndex的空控制器,自定义一个方法如下: public ActionResult PageIndex(s ...
- Linux下安装redis-4.0.10
1.下载redis-4.0.10 在redis官网(https://redis.io/download)下载redis-4.0.10 2.将安装包上传至Linux服务器 在Linux服务器根目录下创建 ...
- window.screenLeft&&window.screenTop&&window.screenX&&window.screenY
http://blog.sina.com.cn/s/blog_14e2a237b0102w4i0.html window.screenLeft&&window.screenTop&am ...
- linux iptables相关
iptables -A INPUT -p udp --dport 90 -j ACCEPT iptables -A INPUT -p tcp -m state --state ESTABLISHED ...