今天~~~

Posted on 2007-07-16 20:14  Semmy  阅读(266)  评论(0编辑  收藏  举报
      早上起来也不算早,感觉还是挺晚的,哎!这么下去,这个项目不知道怎么时候会完呢?就拿今天来说,写了一个类一个接口,一天就这样过去了.看来又要延迟计划了.不过,虽然今天只做了一点的事,但主要是学到了东西.下面我对自己的今天事总结一下.
      有时候不知道是为什么,一段代码明明正确的敲了N次,还是不正确,这时候真是不知道怎么办,真想打自己两个耳光.
      今天在用三层架构一个项目,在数据层建一个Article的类,当然还有对应一个接口IArticle,在类里面都实现了接口的方法,然后再建 一个DALFactory的工厂类, 用以生产接口.只要在逻辑层建一个GArticle的类进行一些操作,就可以返回想要的结果,虽然只有几行的代码,可是我用了一天,也想不明白.最后虽然可以用了,却还是不知道之所以然.下面我贴出代码,希望有知道的人告知一下.
下面是Article类:

下面是IArticle接口:
下面是DALFactory类:
 1using System;
 2using System.Collections.Generic;
 3using System.Text;
 4using System.Data;
 5
 6namespace DataAccess
 7{
 8    //这个是工厂,生产各种对象.
 9   public class DALFactory
10    {
11       
12       //可生产一个各类文章信息的对象这个对象里可细分为各种类的文章.
13       public static IArticle GetArticle()
14       {
15           IArticle article =(IArticle) new Article();
16           return article;
17       }

18
19    }

20}

下面是逻辑层GAticle类:
 1using System;
 2using System.Collections.Generic;
 3using System.Text;
 4using DataAccess;
 5using System.Data.SqlClient;
 6
 7namespace Bussiness
 8{
 9    
10    public class GArticle
11    {
12        public void LoadArticle()
13        {
14            Article mavinAnswer = DALFactory.GetArticle();
15            int asId = 1;
16            mavinAnswer.GetA();
17            mavinAnswer.GetA(asId);
18        }

19       
20    }

21}

现在上面这个逻辑层的代码是正确的,可为什么这改成下面这样就不行了?
 1using System;
 2using System.Collections.Generic;
 3using System.Text;
 4using DataAccess;
 5using System.Data.SqlClient;
 6
 7namespace Bussiness
 8{
 9    
10    public class GArticle
11    {
12       
13            Article mavinAnswer = DALFactory.GetArticle();
14            int asId = 1;
15            mavinAnswer.GetA();
16            mavinAnswer.GetA(asId);
17        
18       
19    }

20}

我是在VS2005环境下编写的,真是搞不明白,为什么这些一定要写在方法里面.虽然不弄明白,不过还是有点收获,以后懂得把所有东西放在方法或属性里,今天就是没有写那个方法,调试了一天,没弄明白.现在可以是可以了,可就是弄不明白里面的奥秘.希望有人告知,也希望给有遇到这种情况的人一些帮助,呵呵.可能是帮不了,因为我这么菜.

Copyright © 2024 Semmy
Powered by .NET 8.0 on Kubernetes