码迷,mamicode.com
首页 > 其他好文 > 详细

崔莺莺要明媒正娶,张生你怎么看?

时间:2014-06-03 00:40:51      阅读:286      评论:0      收藏:0      [点我收藏+]

标签:三层架构

  话说张生和崔莺莺历经波折,最后有情人终成眷属。但是生活中的人都是现实的,即使男人再好没房没车也白搭;所以最后崔莺莺就要求张生准备一份聘礼,如果准备的聘礼符合自己的要求,就嫁给张生;如果聘礼不和自己的心意,就出家削发为尼,一辈子不谈婚事!以此为故事背景今天就谈一下三层的学习。

  崔莺莺想要明媒正娶,在古代男女之间是不直接接触的,所以张生请了王婆来给保媒,王婆年事已高不能干体力活,她找了个挑运工帮她挑聘礼,从自己的媒人钱里给挑运工支付工钱。此为故事中的主要任务,下面介绍一下他们在三层中扮演的角色。

  三层的划分目的是为了高内聚低耦合的思想,所以分的层次也说法不一,通常划分为表现层(UI)、业务逻辑层(BLL)和数据访问层(DAL)。

  1、表现层(UI):通俗讲就是展现给用户的界面,即用户在使用一个系统的时候他的所见所得。

  2、业务逻辑层(BLL):针对具体问题的操作,也可以说是对数据层的操作,对数据业务逻辑处理。

  3、数据访问层(DAL):该层所做事务直接操作数据库,针对数据的增添、删除、修改、查找等。

  故事中人物扮演角色:张生(UI),王婆(BLL),崔莺莺(DAL)。剩下挑运工来扮演实体层,实体层严格的来说不算是一层,我们更喜欢叫它实体类,它用来存储数据在三层中的上蹿下跳,跟所有的层都能打交道。

  下面我们就看看张生和崔莺莺到底能不能喜结连理吧!

  男女之间的事情往往是女方比较腼腆(当然不能排除当今社会的女汉子),所以张生要主动请王婆帮她下聘礼(U层要引用B层)。王婆要带着聘礼去找崔莺莺下聘,前面说了女方腼腆所以王婆要主动把聘礼送过去,才能知道是不是崔莺莺想要的礼物(B层要引用D层)。挑运工跟着王婆挑着聘礼穿梭在张生和崔莺莺之间,所以张生、崔莺莺、和王婆都要依赖挑运工(三层都要引用实体层)。如果王婆带着聘礼去了,正和崔莺莺的意愿,那么这桩亲事就算成了,如果崔莺莺见到聘礼不合心意,那么就只能出家了!

 

 

<span style="font-family:KaiTi_GB2312;font-size:18px;">  //U层代码
        private void button1_Click(object sender, EventArgs e)
        {
            string GiftName = textBox1.Text.Trim();
            王.婆.Xiapin xp = new 王.婆.Xiapin();
            if (xp.XiaPin(GiftName)==true)
            {
                MessageBox.Show("下聘成功!");
            }
            else
            {
                MessageBox.Show("还是削发为尼吧!");
            }
        }</span>


 

<span style="font-family:KaiTi_GB2312;font-size:18px;"> //B层代码
        public bool XiaPin(string GiftName)
        {
            崔.莺莺.Gift gift = new 崔.莺莺.Gift();
            挑.运工.GiftInfo pinli = gift.SelectGift(GiftName);

            if (pinli != null)
            {
                return true;
            }
            else
            {
                return false;
            }
        }</span>


 

<span style="font-family:KaiTi_GB2312;font-size:18px;">//D层代码
        public 挑.运工 .GiftInfo SelectGift(string GiftName)
        {
            using(SqlConnection conn = new SqlConnection(gongju.ConnString))
            {
                conn.Open();
                string strSql="SELECT GiftName FROM GiftInfo WHERE GiftName=@GiftName";
                SqlCommand cmd = new SqlCommand(strSql,conn);
                cmd.Parameters.Add(new SqlParameter("@GiftName", GiftName));
                SqlDataReader reader = cmd .ExecuteReader();
                挑.运工.GiftInfo gift = null;
                while (reader .Read ())
                {
                    if (gift ==null )
                    {
                        gift = new 挑.运工.GiftInfo();
                    }
                    gift .GiftName = reader.GetString  (0);
                }
                return gift;
            }
        }</span>


 

<span style="font-family:KaiTi_GB2312;font-size:18px;">//实体层代码
    public  class GiftInfo
    {
        public string GiftName {get ;set;}
    }</span>


  话说张生一夜发家准备的聘礼是黄金万两,正和崔莺莺的心意(哪个女人不爱财):

bubuko.com,布布扣

  可惜的是挑运工心术不正,把王婆打晕后带着聘礼逃之夭夭了,张生能拿着当初两人的定情信物“口脂五寸”去下聘:

bubuko.com,布布扣

  哎!现实就是这么残酷!!!

 

崔莺莺要明媒正娶,张生你怎么看?,布布扣,bubuko.com

崔莺莺要明媒正娶,张生你怎么看?

标签:三层架构

原文地址:http://blog.csdn.net/u010926964/article/details/27679987

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!