DLL存放路径的问题

rosysun 2003-06-16 08:18:13
一个大的应用,可能有很多模块组成。为了方便组织开发,划分为几个模块。每个模块都有一系列的ASPX、DLL等文件组成。所有的DLL文件只能放在应用程序的根部的bin中吗?能不能放在子目录的bin目录中?要怎么配置?
...全文
190 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
azev 2003-06-17
  • 打赏
  • 举报
回复
并不是一定要放在bin目录中
理论上是成立的,而且思归那边也可以了.....

就是我们怎么也试验不成
azev 2003-06-17
  • 打赏
  • 举报
回复
jlhdlj()

你大概没有清楚楼主的意思
他想把dll文件放在非bin目录中,也就是这个程序的任何一个目录下
jlhdlj 2003-06-17
  • 打赏
  • 举报
回复
是不是你的操作步骤有问题,以下是一个正确的操作步骤示例:

生成示例

1、创建 IIS 虚拟根目录(在该论述中名为 Samples)。

2、在虚拟根目录下创建名为 bin 的子目录(例如 Samples\bin)。bin 目录包含位于您的 ASP.NET 应用程序本地的程序集(编译的 .dll 文件)。您可以在虚拟根目录下创建子目录(例如 Samples\EventControls, Samples\DataBoundControls 等)。但是,您必须只创建一个 bin 目录并且它必须直接在虚拟目录 (Samples\bin) 下。

3、将 ASP.NET 页(例如 .aspx、.ascx、.asax 和 .asmx)和源文件(例如 .cs 或 .vb)复制到虚拟根目录。如果您在部署方案中不希望用户浏览到源代码,则可以将源文件(.cs 或 .vb)复制到不在虚拟根下的单独的目录中。但 ASP.NET 页必须放置在虚拟根目录 (Samples) 或其某一子目录 (Samples\DataBoundControls) 中。

4、从虚拟根目录(或者包含 .cs 或 .vb 源文件的目录),执行以下命令。如果从不是虚拟根目录的目录执行该命令,则必须提供 \bin 目录路径。

[C#]
csc /t:library /out:./bin/CustomControls.dll /r:System.dll /r:System.web.dll /r:System.Drawing.dll *.cs

[Visual Basic]
vbc /t:library /out:./bin/CustomControls.dll /r:System.dll /r:System.web.dll /r:System.drawing.dll
/r:System.Data.dll *.vb

注意 由以上命令生成的程序集必须名为 CustomControls.dll,因为程序集名称 CustomControls 在示例 .aspx 页上的 Register 页指令中使用。

5、通过在地址栏中输入以下命令之一,在您的浏览器中请求示例 .aspx 页。
http://localhost/Samples/SampleFilename.aspx

http://YourMachineName/Samples/Filename.aspx

注意 通过只复制您感兴趣的文件并在步骤 4 中执行生成命令,您可以增量生成该示例。在您想要添加更多的示例时,将附加的 ASP.NET 页和源文件复制到适当的目录并在步骤 4 中重新执行生成命令。
rosysun 2003-06-17
  • 打赏
  • 举报
回复
会不会跟版本有关系?我的Framework的版本是:1.0.3705.0,你们的是版本多少?
saucer 2003-06-17
  • 打赏
  • 举报
回复
global.asax,虚拟目录的权限设置等等没有关系,除非你把放DLL的子目录的权限全关了,否则,配置web.config就行了
saucer 2003-06-17
  • 打赏
  • 举报
回复
I don't know what you are doing, it works for me. Here is what I did. In the virtual directory "labs", I renamed "bin" subdirectory to "bin2", and modified the web.config in this virtual directory to

<configuration>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<probing privatePath="bin2"/>
</assemblyBinding>
</runtime>
</configuration>
rosysun 2003-06-17
  • 打赏
  • 举报
回复
先谢过各位!
我觉得肯定是有办法的。思归的思路我相信可行,我在MSDN上也看到了相关的介绍。但是,我确实不明白,为什么我的不行。我想肯定是我在什么地方弄错了,下午我再找时间从头开始做一遍。
另外,想请教思归,除了配置web.config以外,global.asax,虚拟目录的权限设置等等有没有关系?
rosysun 2003-06-16
  • 打赏
  • 举报
回复
补充一点,我前面给出的错误是我有两个页面,一个是AbstractList,另外一个是Abstract。上面的错误应该是对应http://127.0.0.1:8080/personal/abstractlist.aspx的错误。
rosysun 2003-06-16
  • 打赏
  • 举报
回复
我尝试了就是不行,我想可能是别的地方有问题。
我在aspx页面的引用指令按照如下方式写的,如果是把dll放在应用程序的根目录bin下,是正确的。如果不在根目录的bin下,下面的写法有没有什么问题?
还有,我只是在应用的根目录下配置了web.config,在子目录personal下没有配置web.config,有没有问题?
谢谢各位!

<%@ Page language="C#" AutoEventWireup="false" Codebehind="Abstract.aspx.cs" Inherits="Personal.Abstract" Assembly="Abstract.aspx.cs" %>
fxmpch 2003-06-16
  • 打赏
  • 举报
回复
思归的方法应该可以吧,我同意!!!
azev 2003-06-16
  • 打赏
  • 举报
回复
我还是没有成功

http://expert.csdn.net/Expert/topic/1325/1325996.xml?temp=.4388544
yuanylong 2003-06-16
  • 打赏
  • 举报
回复
学习。
dongchuanlu 2003-06-16
  • 打赏
  • 举报
回复
dll会被自动放在你的工程项目的同级的bin文件夹下
dingyy 2003-06-16
  • 打赏
  • 举报
回复
up
saucer 2003-06-16
  • 打赏
  • 举报
回复
默认的路径是bin,但你可以改变你的web.config,

<configuration>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<probing privatePath="bin;bin2\subbin;bin3"/>
</assemblyBinding>
</runtime>
</configuration>
rosysun 2003-06-16
  • 打赏
  • 举报
回复
saucer,你好!
我测试了,不行。麻烦你分析什么原因?谢谢!

虚拟网站根目录对应我的物理路径e:\srdw,有子目录personal,其下有子目录bin,存放生成的dll。
ie输入路径:
http://127.0.0.1:8080/personal/abstract.aspx

错误提示如下:
///////////////////////////////////////////////////////////////////////////////

“/”应用程序中的服务器错误。
--------------------------------------------------------------------------------

分析器错误
说明: 在分析向此请求提供服务所需资源时出错。请检查下列特定分析错误详细信息并适当地修改源文件。

分析器错误信息: 未能加载类型“Personal.AbstractList”。

源错误:


行 1: <% @Page Language="C#" AutoEventWireup="false" CodeBehind="AbstractList.aspx.cs" Inherits="Personal.AbstractList" %>
行 2:
行 3: <html>


源文件: E:\SRDW\personal\abstractlist.aspx 行: 1


--------------------------------------------------------------------------------
版本信息: Microsoft .NET 框架版本:1.0.3705.0; ASP.NET 版本:1.0.3705.0

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

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