各位老师,有一个疑难的问题,已经耽误了我5天的时间了!(跪谢)

huanghaitao888 2006-06-19 02:27:27
一个解决方案中有六个项目:
其中IDAL为接口
DataFactory为工厂类
BLL为中间业务层!

在工厂类中:
using System;
using System.Reflection;
using System.Configuration;

namespace BookShop.DALFactory
{

public class Admin
{
public static BookShop.IDAL.IADMIN Create()
{
string Path =System.Configuration.ConfigurationSettings.AppSettings["WebDAL"];
string ClassName = Path + ".Admin";
return (BookShop.IDAL.IADMIN) Assembly.Load(Path).CreateInstance(ClassName);

}
}
}

调试通过!

在BLL类中:
using System;
using BookShop.DALFactory;
using BookShop.IDAL;
using BookShop.MODEL;

namespace BookShop.BLL
{
/// <summary>
/// Admin 的摘要说明。
/// </summary>
public class Admin
{
public ADMINInfo SignIn(string adminName, string adminPassword)
{
if((adminName.Trim() == string.Empty) || (adminPassword.Trim() == string.Empty))
{
return null;
}
else
{
IADMIN Dal = BookShop.DALFactory.Admin.Create();
ADMINInfo ObjAdmin = Dal.SignIn(adminName, adminPassword);
return ObjAdmin;


}



}
}
}


执行的时候总是出现
ADMINInfo ObjAdmin = Dal.SignIn(adminName, adminPassword);
没有引用到对象!
发现原因是IADMIN Dal = BookShop.DALFactory.Admin.Create();的数值为null

请各位老师帮忙,谢谢!
...全文
396 15 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
Santos 2006-06-19
  • 打赏
  • 举报
回复
看一下调用顺序
chengbo1983 2006-06-19
  • 打赏
  • 举报
回复
在线,加就是,晚上给你说哈
现在有事要出去一下
huanghaitao888 2006-06-19
  • 打赏
  • 举报
回复
您不在线?老师!
chengbo1983 2006-06-19
  • 打赏
  • 举报
回复
我晕
我的QQ7896503
加我,QQ上说
huanghaitao888 2006-06-19
  • 打赏
  • 举报
回复
是的,Admin也实现IADMIN接口了!
谢谢chengbo1983啊
chengbo1983 2006-06-19
  • 打赏
  • 举报
回复
我猜你是仿造PetShop这个例子来做的
BookShop.SQLServerDAL.Admin应该实现IADMIN接口
huanghaitao888 2006-06-19
  • 打赏
  • 举报
回复
我也是这么写的呀,可是怎么就是不对呢?
是否其他的地方的原因?
谢谢chengbo1983,您真是个高手啊!
chengbo1983 2006-06-19
  • 打赏
  • 举报
回复
最终的ClassName应该是你具体的数据访问类
比较Sql的话,你的数据访问类的名字为BookShop.SQLServerDAL
那ClassName就是BookShop.SQLServerDAL.Admin
huanghaitao888 2006-06-19
  • 打赏
  • 举报
回复
断点调试ClassName与PATH都对啊!
chengbo1983 2006-06-19
  • 打赏
  • 举报
回复
断点调试一下看ClassName和PATH是什么?
chengbo1983 2006-06-19
  • 打赏
  • 举报
回复
哦,说错了
huanghaitao888 2006-06-19
  • 打赏
  • 举报
回复
TO:shuo_shu(取个名字还真难)
在bin目录下有这个web.config文件webdal的value定义的dll文件!
chengbo1983 2006-06-19
  • 打赏
  • 举报
回复
BookShop.BLL.Admin实现了BookShop.IDAL.IADMIN接口吗?
shuo_shu 2006-06-19
  • 打赏
  • 举报
回复
在的bin目录下面去看有没有你web.config文件webdal这个value属性定义的那个dll文件。
如果没有就是null了, 代码本身没有什么问题。 主要是检测你的项目配置了。
huanghaitao888 2006-06-19
  • 打赏
  • 举报
回复
为什么IADMIN Dal = BookShop.DALFactory.Admin.Create();的数值为null

111,098

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧