往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设计模式(三)的更多相关文章

  1. 简单的物流项目实战,WPF的MVVM设计模式(一)

    新建一个WPF项目,命名为WMS 然后分别新建文件夹,Data,Models,Views,ViewModels,Services,如下图所示 然后通过NuGet安装连个Nuget包,分别为SQLite ...

  2. 简单的物流项目实战,WPF的MVVM设计模式(五)

    开始界面 <Grid> <Grid.RowDefinitions> <RowDefinition/> <RowDefinition/> <RowD ...

  3. 简单的物流项目实战,WPF的MVVM设计模式(四)

    接下来写ViewModels 创建运单的ViewModel类 public class CreateExpressWindowViewModel: NotificationObject { priva ...

  4. 简单的物流项目实战,WPF的MVVM设计模式(二)

    往Models文件添加一个类,ConnectObject         /// <summary>        /// 链接数据库字符串        /// </summary ...

  5. WPF使用MVVM(三)-事件转命令

    WPF使用MVVM(三)-事件转命令 上一节介绍了WPF中的命令,可是仅仅介绍的是WPF框架给我们提供的点击命令,也就是用Command属性来绑定一个命令,用来响应按钮的点击行为!显然这是不够的,界面 ...

  6. Redis项目实战---应用及理论(三)---Jedis使用

    Jedis即redis java客户端,源码地址:https://github.com/xetorthio/jedis pom配置: <dependency>    <groupId ...

  7. 使用MVVM设计模式构建WPF应用程序

    使用MVVM设计模式构建WPF应用程序 本文是翻译大牛Josh Smith的文章,WPF Apps With The Model-View-ViewModel Design Pattern,译者水平有 ...

  8. WPF系列教程——(二)使用Prism实现MVVM设计模式 - 简书

    原文:WPF系列教程--(二)使用Prism实现MVVM设计模式 - 简书 本文假设你已经知道MVVM设计模式是什么,所以直接进入正题,今天我们就用Prism来实现WPF的MVVM设计模式,百度上关于 ...

  9. GraphQL + React Apollo + React Hook 大型项目实战(32 个视频)

    GraphQL + React Apollo + React Hook 大型项目实战(32 个视频) GraphQL + React Apollo + React Hook 大型项目实战 #1 介绍「 ...

随机推荐

  1. dell笔记本 win10 下安装 ubuntu16.04 踩坑记录

    硬件配置情况: dell笔记本-灵越-5577 —— I5七代(带有集显),8G内存条DDR4,GTX1050,128G固态硬盘,1T机械硬盘. 固态硬盘划分为3部分,100GB给win10的C盘,1 ...

  2. 【canvas学习笔记六】状态保存和变换

    save()和restore() save() 保存当前状态,将当前canvas的状态存入栈中. restore() 恢复之前save的一个状态,将之前的状态从栈中弹出. 保存的当前状态包含以下信息: ...

  3. 【商业智能VS人工智能】

    什么是智能? 从感觉到记忆到思维这一过程,称为“智慧”,智慧的结果就产生了行为和语言,将行为和语言的表达过程称为“能力”,两者合称“智能”,将感觉.去记.回忆.思维.语言.行为的整个过程称为智能过程, ...

  4. (转载)FM 算法

    (转载)FM算法 https://zhuanlan.zhihu.com/p/33184179

  5. [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 ...

  6. leetcode-mid-backtracking -22. Generate Parentheses-79 Word Search -NO

    mycode   错误,因为借鉴了Number of Islands问题中的方法,导致在for循环中即使已经出现了答案,也还会继续遍历.但是两个题目的不同时,island需要找出所有的情况,这个题只需 ...

  7. MVC简易分页(Razor)

    一.无数据提交    第一步,建立一个 Controller命名为PageIndex的空控制器,自定义一个方法如下:           public ActionResult PageIndex(s ...

  8. Linux下安装redis-4.0.10

    1.下载redis-4.0.10 在redis官网(https://redis.io/download)下载redis-4.0.10 2.将安装包上传至Linux服务器 在Linux服务器根目录下创建 ...

  9. window.screenLeft&&window.screenTop&&window.screenX&&window.screenY

    http://blog.sina.com.cn/s/blog_14e2a237b0102w4i0.html window.screenLeft&&window.screenTop&am ...

  10. linux iptables相关

    iptables -A INPUT -p udp --dport 90 -j ACCEPT iptables -A INPUT -p tcp -m state --state ESTABLISHED ...