¡¶Í¼Êé¹ÜÀíϵͳ¡·Éè¼ÆÖ¸µ¼Ê飨×îÍêÕû°æ£©

¡¶Í¼Êé¹ÜÀíϵͳ¡·C# Éè¼ÆÖ¸µ¼Êé V2.0 2013.8.1 ¡ª 9.20 LSH

ÐͰ´ÕÕSQL Server×Ö¶ÎÀàÐÍÉè¼Æ¼´¿É¡£Oracle×Ö¶ÎÀàÐÍÓëDataTableÁÐÀàÐͶÔÕÕ¹ØÏµ£¬¼ûÏÂ±í£º Oracle×Ö¶ÎÀàÐÍ char, varchar2, long, clob nchar, nvarchar2, nclob numeric(,) Float rowid date raw, long raw, blob System.Decimal System.Decimal System.Decimal System.DateTime System.Byte[] DataTableÖÐÀàÐÍ System.String

½¨Ò飺ÔÚDALÏîÄ¿Öн¨Á¢2¸öĿ¼SQL¡¢Oracle£¬·Ö±ðÒÆÈëSQL ServerºÍOracleµÄDALÀàÎļþ£»²¢·ÖΪ2¸öÃüÃû¿Õ¼ä£¬¼´BookManage.DAL.SQLºÍBookManage.DAL.Oracle

¹ØÓÚ¶Ô¶àÖÖÊý¾Ý¿âµÄÖ§³Ö¼ûϽڡ£

7.4 ʵÏÖ¶Ô¶àÊý¾Ý¿âµÄÖ§³Ö

ÐÞ¸ÄDALÓëBLL²ã´úÂë¡£ÒÔÔ­ReaderDALÀàΪÀý½øÐÐ˵Ã÷£º

£¨1£©ÐÂÔö½Ó¿ÚÀà IReaderDAL £¬Ëü°üÀ¨Ô­ReaderDALÀàµÄËùÓÐpublic³ÉÔ±¡£

£¨2£©ReaderDALSql¼°ReaderDALOracle¾ùʵÏÖIReaderDAL½Ó¿Ú£¬¼´2¸öÀàµÄÍⲿ·ÃÎʽӿÚÍêÈ«Ïàͬ¡£

public class ReaderDALSql : IReaderDAL

public class ReaderDALOracle : IReaderDAL

ReaderDALSqlÀàµÄÐ޸ģº´Ó½Ó¿Ú¼Ì³ÐµÄº¯Êý²»ÄܲÉÓþ²Ì¬³ÉÔ±º¯Êý£¬¼´È¥µôstatic ReaderDALOracleÀࣺÐÂÔöÀ࣬ËüÓëReaderDALSqlÀàʵÏÖµÄpublic³ÉÔ±º¯ÊýÍêÈ«Ïàͬ£¬

µ«ËüÒýÓõÄÊÇOracleHelperÀàÖеijÉÔ±£¬¶ø²»ÊÇSqlHelper

£¨3£©ÐÂÔö¹¤³§ÀàDALFactory¡£

public class DALFactory {

private IReaderTypeDAL readerTypeDAL; private IReaderDAL readerDAL; public string GetDBSource() {

return (\); //ʹÓÃSQL Server //return (\ʹÓÃOracle }

public IReaderTypeDAL GetReaderTypeDAL() {

45 / 47

¡¶Í¼Êé¹ÜÀíϵͳ¡·C# Éè¼ÆÖ¸µ¼Êé V2.0

if (GetDBSource() == \) else

2013.8.1 ¡ª 9.20 LSH

readerTypeDAL = new ReaderTypeDALSql(); readerTypeDAL = new ReaderTypeDALOracle(); return readerTypeDAL; }

public IReaderDAL GetReaderDAL() {

if (GetDBSource() == \)

readerDAL = new ReaderDALSql(); else

readerDAL = new ReaderDALOracle(); return readerDAL; }

}

£¨4£©ÐÞ¸ÄBLL²ãReaderAdminÀà

7.5 Èí¼þ·¢²¼¡¢²¿ÊðÓë×Ô¶¯¸üÐÂ

×÷Ϊ²úÆ·£¬Ó¦¸Ã½«Ê¹ÓÃSQL»¹ÊÇOracleÒÔ¼°ÏàÓ¦µÄÁ¬½Ó×Ö·û´®£¨ÔÚSqlHelperºÍOracleHelperÀàÖУ©ÒƳöµ½³ÌÐòÍⲿ£¬¼´½«SQL»òOracleÒÔ¼°Á¬½Ó×Ö·û´®¼ÓÃܺó×÷ΪÍⲿÎļþ´æ·Å£¬³ÌÐòÔËÐÐʱ¶ÁÈ¡¸ÃÎļþ²¢½âÃÜ¡£

46 / 47

¡¶Í¼Êé¹ÜÀíϵͳ¡·C# Éè¼ÆÖ¸µ¼Êé V2.0 2013.8.1 ¡ª 9.20 LSH

Èí¼þ°üÀ¨4¸öÄ£¿éµÄ°æ±¾Éý¼¶Óë¸üУ¬¼´BookManage.Model.dll¡¢BookManage.DAL.dll¡¢BookManage.BLL.dll¡¢BookManage.exeµÈÎļþ¡£¿É½«4¸öÎļþ·ÅÔÚÒ»¸öFTP·þÎñÆ÷»òWeb·þÎñÆ÷µÄ¹Ì¶¨Ä¿Â¼ÉÏ£¬ÔÚBookManage.exe³ÌÐòÖÐÔö¼ÓÒ»¸ö¡°¼ì²é¸üС±²Ëµ¥¼°¹¦ÄÜÄ£¿é£¬Óû§Æô¶¯»ò¶¨Ê±×Ô¶¯Æô¶¯¸Ã¹¦ÄÜ¡£

µ±È»Ê¹ÓÃVS .NET×ÔÉíµÄ²¿Êð¹¦ÄÜ£¬¾Í¸ü¼Ó·½±ãÁË£¬È粿ÊðÏîÄ¿¡¢ClickOnceµÈ¡£

³¤½­´óѧ ¼ÆËã»úѧԺ

ÁºÉÙ»ª

2013Äê9ÔÂ20ÈÕ

47 / 47

ÁªÏµ¿Í·þ£º779662525#qq.com(#Ìæ»»Îª@)