.net三层架构开发步骤

City城市表,id ,name,password,address,phone;
1.新建一个windows窗体应用程序,CitySys
2.文件–》添加–》新建项目–》类库(CitySysModel)–》重命名class1.cs的类(CityModel)。
3.根据数据表里面的字段,在Model里面创建字段。prop+tab
+tab.

eg:public int Id{get;set;}public string Name{get;set;}public string Password{get;set;}public string Address{get;set;}public string Phone{get;set;}

4.创建DLL层,CitySysDLL。–>重命名Class1.cs,CityDLL。
5.创建BLL层,CitySysBLL。–》重命名Class1.cs,CityBLL。
6.添加引用:表示层引用–》Model层和BLL层
BLL层引用DLL层和MOdel层
DLL层引用Model层
7.去DLL层里面写两个方法(登陆[Login]和AddCity[添加])。
8.DLL层里面的代码:

public string constr = "数据库连接字符串";
//登陆
public bool Login(string name,string password){string sql = "select * from city where name = @name and password = @password";SqlParameter [] param = new Sqlparameter[]{new Sqlparameter("@name",name),new SqlParameter("@password",password)};using(SqlConnection conn = new SqlConnection(constr)){SqlCommand cmd = new SqlCommand (sql,conn);cmd.Parameters.AddRange(param);conn.Open();SqlDataReader dr = cmd.ExecuteReader();if(dr.Read()){dr.Close();conn.Close();return true;}else{dr.Close();conn.Close();return false;}}
} 
//添加的方法
public int AddCity(City city ){string sql="insert into city values(@name,@password,@address,@phone)";SqlParameter [] param = new Sqlparameter[]{
new Sqlparameter("@name",city.name),
new SqlParameter("@password",city.password),
new SqlParameter("@address",city.address),
new SqlParameter("@phone",city.phone)};using(SqlConnection conn = new SqlConnection(constr)){SqlCommand cmd = new SqlCommand(sql,conn);cmd.Parameters.AddRange(param );conn.Open();return cmd.ExecuteNonQuery();}
}

9.写BLL层。给BLL层里面写登陆的方法和添加的方法

public CityDLL cdll = new CityDLL();
//登陆	
public bool Login(string name ,string password){return cdll.Login(name,password);
}
//添加
public int AddCity(City city){return cdll.AddCity(city);
}

10.开始在默认的窗体里面拉几个lable和button
label = 欢迎进入某某系统
lable2 = 名称 textbox = Name
lable3 = 密码 textbox = Password
button1 = 登陆 button2 = 取消
11.双击登陆进去。写登陆的方法

public CityBLL cbll = new CityBLL();//获取值
string name = this.Name.Text;
string password = this.Password.Text;
if(cbll.Login(name,password)){MessageBox.Show("登陆成功");FrmMain fm = new FrmMain();fm.Show();this.Hide();
} else{MessageBox.Show("登陆失败");
}

12.创建一个主窗体,右击–》添加–》windows窗体–》FrmMain.–》拉四个Button,分别是添加信息,查询信息,修改信息,删除信息
13.双击添加信息进去,写代码:
//打开添加的窗体
addCity ac = new addcity();
ac.Show();
this.Hide();
14.拉一个添加的窗体。双击添加按钮进去写代码:

//获取值City city = new City();city.Name = this.name.Text;city.Password = this.Password.Text;city.Address = this.Address.Text;city.Phone = this.Phone.Text;//调用bll里面添加方法int rel = cbll.AddCity(city);if(rel>0){MessageBox.Show("添加成功");}else{MessageBox.Show("添加失败");}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/326009.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

JAVA多线程和并发面试问题

转载自 JAVA多线程和并发面试问题 Java多线程面试问题 1.进程和线程之间有什么不同? 一个进程是一个独立(self contained)的运行环境,它可以被看作一个程序或者一个应用。而线程是在进程中执行的一个任务。Java运行环境是一个包含了不同的类和程序的…

C#各个版本中的新增特性详解

序言 自从2000年初期发布以来,c#编程语言不断的得到改进,使我们能够更加清晰的编写代码,也更加容易维护我们的代码,增强的功能已经从1.0搞到啦7.0甚至7.1,每一次改过都伴随着.NET Framework库的相应支持,也…

微内核操作系统能做服务器系统吗,科普:微内核操作系统现状

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼微内核结构是1980年代产生出来的较新的内核结构,强调结构性部件与功能性部件的分离。20世纪末,基于微内核结构,理论界中又发展出了超微内核与外内核等多种结构。尽管自1980年代起,大部…

2019蓝桥杯省赛---java---A---8(修改数组)

题目描述 思路分析 不是每次1了,而是直接加相同数字出现过的次数,比如有3个1,第二个1就是1,第三个直接2,而不是两次1,而且每次都记录每次的新值出现的次数,这样循环到新数未出现过为止 代码实…

HTML、sqlserver数据库和java前七章节的复习(一)

1.HTML的基本结构 <!doctype> <html><head><title></title></head><body></body> </html>2.有序列表 <ol><li></li></ol>3.无序列表 <ul><li></li></ul>4.写一个边…

Java异常面试问题

转载自 Java异常面试问题 1.什么是Java中的异常&#xff1f; 异常是在程序执行期间可能发生的错误事件&#xff0c;并且会中断它的正常流程。异常可能来自不同类型的情况&#xff0c;例如用户输入的错误数据&#xff0c;硬件故障&#xff0c;网络连接故障等。 每当执行jav…

复习总结01110

.1.//从控制台输入3个数&#xff0c;然后按从小到输出public static void test_num(){Scanner sc new Scanner(System.in);System.out.println("请输入第一个数&#xff1a;");int num1 sc.nextInt();System.out.println("请输入第二个数&#xff1a;");…

ASP.NET Core 网站在Docker中运行

Docker作为新一代的虚拟化方式&#xff0c;未来肯定会得到广泛的应用&#xff0c;传统虚拟机的部署方式要保证开发环境、测试环境、UAT环境、生产环境的依赖一致性&#xff0c;需要大量的运维人力&#xff0c;使用Docker我们可以实现一次部署&#xff0c;到处运行。 本文介绍如…

键值存储之外,Redis还有这些用法

转载自 键值存储之外&#xff0c;Redis还有这些用法 Redis是一个强大的内存数据结构存储&#xff0c;包含数据库&#xff0c;缓存和消息代理等多种用途。大多数人经常认为它不过是一个简单的键值存储&#xff0c;但其实它有更多的能力。下面给出一些实例 1.全页面缓存 首先…

2018蓝桥杯省赛---java---C---3(字母阵列)

题目描述 测试数据 FOAIQNALWIKEGNICJWAOSXDHTHZPOLGYELORAUHOHCZIERPTOOJUITQJCFNIYYQHSBEABBQZPNGYQTCLSKZFCYWDGOAIADKLSNGJ GSOZTQKCCSDWGUWAUOZKNILGVNLMCLXQVBJENIHIVLRPVVXXFTHQUXUAVZZOFFJHYLMGTLANQIAOQQILCDCJERJASNCTLYGRMHGF TSDFYTLVIBHKLJVVJUDMKGJZGNNSTPVLCKT…

复习总结0111

1.从控制台中输入三个数&#xff0c;然后从小到大输出 public static void mian(String []args){Scanner sc new Scanner(System.in);System.out.println("请输入第一个数&#xff1a;");int a sc.nextInt();System.out.println("请输入第二个数&#xff1a;&…

sql基本命令整理

1、 查看数据库中的表或查询数据库&#xff1b; show tables/databases&#xff1b; 2、 查看数据库中所有的表 show tables&#xff1b;&#xff08;前提是使用use database 数据库&#xff1b;&#xff09; 3、 查看数据表结构 describe 表名&#xff1b; 4、 创建数据…

微软确认5月2日召开新品发布会 8天后就是Build 2017大会

援引外媒 ZDNet 报道&#xff0c;微软计划在 5 月上旬召开新品发布会&#xff0c;重点围绕着 Windows 10 Cloud&#xff0c;并且有望公布关于 Surface Pro 5 的相关信息。今天这条消息已经得到了证实&#xff0c;微软官方宣布将于 5 月 2 日将会在纽约召开发布会&#xff0c;也…

面试进阶之字符串常量池

转载自 面试进阶之字符串常量池 作为最基础的引用数据类型&#xff0c;Java 设计者为 String 提供了字符串常量池以提高其性能&#xff0c;那么字符串常量池的具体原理是什么&#xff0c;我们带着以下三个问题&#xff0c;去理解字符串常量池&#xff1a; 字符串常量池的设计…

java实现人脸识别V3版本开发

有段时间没有写更新公众号了&#xff0c;也许好多人都忘记了自己还关注了这么个公众号。因为这段时间确实是有其他的事比较忙&#xff0c;还有一个原因就是自己在技术方面没有学习新的东西&#xff0c;所以没有可更新的&#xff08;包括博客&#xff09;今天&#xff0c;我决定…

2018蓝桥杯省赛---java---A---7(三体攻击)

题目描述 题目&#xff1a;三体人将对地球发起攻击。为了抵御攻击&#xff0c;地球人派出了 A  B  C 艘战舰&#xff0c;在太空中排成一个 A 层 B 行 C 列的立方体。其中&#xff0c;第 i 层第 j 行第 k 列的战舰&#xff08;记为战舰 (i, j, k)&#xff09;的生命值为 …

23种设计模式彩图

原文地址&#xff1a;http://www.jianshu.com/p/4a02646f7c9d.NET社区新闻&#xff0c;深度好文&#xff0c;微信中搜索dotNET跨平台或扫描二维码关注

JDBC面试问题

转载自 JDBC面试问题 1.什么是JDBC API&#xff0c;何时使用它&#xff1f; Java DataBase Connectivity API允许我们使用关系数据库。JDBC API接口和类是 java.sql和javax.sql包的一部分。我们可以使用JDBC API来获取数据库连接&#xff0c;在数据库服务器中运行SQL查询和…

java实现人脸识别(使用百度云V3版本)

2017年&#xff0c;开发了第一个版本的人脸识别&#xff0c;当时费时有5天之久终于写出来了&#xff0c;但是只适用于火狐浏览器&#xff0c;别的浏览器都打不开摄像头。 2018年&#xff0c;将人脸识别重新完善&#xff0c;可以支持360、火狐、谷歌等主流浏览器&#xff0c;版…

2018蓝桥杯省赛---java---A---9(倍数问题)

题目描述 代码实现 package lanqiao;import java.util.ArrayList; import java.util.Collections; import java.util.List; import java.util.Scanner;public class Main {public static void main(String[] args){Scanner scanner new Scanner(System.in);int n scanner.ne…