2 superhonour SuperHonour 于 2016.02.03 23:01 提问

Asp.Net抽象工厂 通过反射获取配置文件信息,为什么DAL层的dll文件无法生成到UI层,而简单工厂可以?

使用抽象工厂三层做程序的时候,程序报错“系统找不到指定的文件”。网上百度后,把DAL层生成dll的路径指向UI层的bin目录下,问题解决。程序能正常读取数据库数据。
解决完这个问题后,我写了一个简单三层程序,发现简单三层的程序,运行的时候,DAL层的dll文件能自动生成到UI层,不需要修改DAL层的指向路径。
请问,抽象工厂三层出现这个问题的原因是什么?为什么简单三层不用修改DAL层的生成路径,而抽象工厂三层需要修改才能正常运行?
配置文件中的节点中的内容应该是没有错误的,里面的value值我是复制粘贴的(右键--属性--程序集名称),而且只修改了一下指向路径问题就解决了。
问题截图:
图片说明
配置文件节点:
图片说明
节点的value值:
图片说明
项目:
图片说明

修改DAL层的dll路径
图片说明

1个回答

caozhy
caozhy   Ds   Rxr 2016.02.03 23:09

assemblyPath不正确,你需要指定正确的路径。如果你的dll在另一个路径,你可以用 ../ 回到上一层,比如:
你的程序\bll\bll.dll
你的程序.exe
你的程序\dal\dal.dll
你可以用 ..\dal\dal.dll从bll定位dal.dll

SuperHonour
SuperHonour 您的意思是<appSettings>中这样写吗?<add key="DaoAssemblyPath" value="..\..\OAPractise.DAL">。我试了一下,还是报错。
2 年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
简单工厂模式+反射来改进抽象工厂模式
抽象工厂模式:提供一个创建一系列相关或相互依赖对象的接口,而无需制定它们具体的类 用抽象工厂模式来实现数据库访问访问程序作为例子 UML图形 产品抽象类:产品有可能有许多不同的实现 具体产品:对抽象产品的具体实现 工厂类:包含所有产品创建的方法并且能够创建出具体的对象 从这张图形中来理解抽象工厂模式的定义:工厂类就是接口(DataAccess),作用是创建一
抽象工厂+反射+配置文件 实现数据访问程序
《大话设计模式》中第15章中《就不能不换DB吗?》引出了我今天要谈论的主题:抽象工厂+反射+配置文件 实现数据访问程序。当时也不甚理解啊!到了机房收费的亲身实践中,终于体会到了这对组合的奥秘。 抽象工厂模式(Abstract Factory) 提供一个创建一系列相关或相互依赖对象的接口,而无需制定它们具体的类。知道它是用来创建工厂的就OK了。 反射 提供了封装程序集、模块和类型的对
用VS建立 ASP.NET多层架构 (bll、model、dal、dbutility)彼此间的引用及关系
ASP.NET 三层架构 最近开发一个项目需要用到ASP.NET,由于之前一直做前端,刚接触后台,被虐得不要不要的。 查了很多资料,才对ASP.NET多层架构有了稍微清晰的了解。在此码字,有不对的地方希望各路大神多多指导~ 首先,先看看常常提及的  三层模型   是什么鬼! 三层可以说是一个概念吧。 举个栗子!以“三苏”(苏轼、苏辙、苏洵)来比喻这个模型吧! 业务(BLL)层 是苏洵(苏轼、苏辙
结合Java反射用简单工厂模式改进抽象工厂模式
前一篇简单介绍了抽象工厂模式,结合Java的反射机制,可以用简单工厂模式来改进抽象工厂模式,减少类的数量,增加可维护性。UML图如下: 去除IFactory、SqlserverFactory和AccessFactory三个工厂类,取而代之的是DataAccess类,用一个简单工厂模式来实现。 代码示例: 1. 两个表User和Department的实体类
使用Java反射跟简单工厂模式改进抽象工厂模式
结合Java的反射机制,可以用简单工厂模式来改进抽象工厂模式,减少类的数量,增加可维护性。UML图如下: 去除IFactory、SqlserverFactory和AccessFactory三个工厂类,取而代之的是DataAccess类,用一个简单工厂模式来实现。 代码示例: 1. 两个表User和Department的实体类 [java]
初涉三层架构,UI层和DAL层的调用,ADO.NET对数据库的数据增删改
UI层:可以说是界面层吧 <Window x:Class="三层架构.CustomerListUI" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Tit
bll层访问dal层的类出错
错误如图所示: 错误的原因,userinfo.cs这个类文件受到访问的限制,将类的类型改为public即可访问 修改过后,即可访问,如下图所示:
WinFrom程序-配置文件的使用
俩层架构的WinFrom程序DAL==数据访问层 Models==实体类 StudnetManagePro==UI层 新建应用程序配置文件App.config是一个标准的XML文件标准XML格式文件,通过“键–值”对方式获取<?xml version="1.0" encoding="utf-8" ?> <configuration> <connectionStrings> <add
ASP.NET三层架构DAL层连接数据库的方法
 【转自】 http://zhidao.baidu.com/question/100925344.html --问题:ASP.NET三层架构DAL层连接数据库的方法本人初步接触ASP三层,我知道如果在后台直接写代码如: sqlconnection con=new sqlconnection("server=.;database=db;integrated security=true
(设计模式)简单工厂模式之通过配置文件动态创建实现类
通常我们在使用简单工厂模式的时候会由创建方法create通过传入的参数来判断要实例化哪个对象,就像下面这样: public static class ImageSelectFactory { public static IImageSelect createIImageSelect(ImageSelectClientMode mode) { IIm