C#.Net主程序引用子目录中的模块

问题描述

主程序怎么引用相对路径中的子模块DLL,子模块间怎么引用,References中怎么用相对路径?

解决方案

解决方案二:
是在一个solution里面吗?是的话,直接在AddReferences里的Projects选项卡里选好了。不是的话,简单一点就是在solution里建个目录,然后把dll添加进去,然后在AddReferences里的Browse里选择这个目录里的dll就好了。当然最好的方法是把这个dll注册到全局缓存里,比较麻烦,安装程序里到时候也要写脚本。
解决方案三:
这样References里的路径都是绝对路径,在拷贝到别的机子上时的跟目录与现在不同,怎么找到子目录里的模块DLL文件
解决方案四:
自己用notepad手动改csproj,把引用改成相对路径
解决方案五:
Assembly.LoadFrom,Reflection,extractinterfaces.
解决方案六:
把dll放到工程里面来就可以了VS.net的引用也都是相对于sln根目录的相对路径.这样你把整个Solutioncopy到其他机器的时候,那个dll也会一起copy过去,其相对与sln的路径是不变的
解决方案七:
例主程序目录为bin公共模块为bincomm子模块为binzi1binzi2其中子模块要引用公共模块中的DLL主程序也引用公共模块中的DLL
解决方案八:
关键是子模块是用反射加载然后子模块中又静态加载调用公共模块,这时找不到公共模块

时间: 2024-12-03 12:38:25

C#.Net主程序引用子目录中的模块的相关文章

介绍Ruby中的模块与混合类型的相关知识

  这篇文章主要介绍了Ruby中的模块与混合类型的相关知识,包括平常人们常说的多态与继承等相关知识点,需要的朋友可以参考下 模块是组合在一起的方法,类和常量.模块两个主要好处: 模块提供了一个命名空间,并避免名称冲突. 模块实现混合工厂. 模块定义了一个命名空间,一个沙箱中方法和常量可以自由使用,而不必担心踩到其他的方法和常数. 语法: ? 1 2 3 4 5 module Identifier statement1 statement2 ........... end 就像被命名为类常量模块中

aspnet-未能加载文件或程序集“SharpSvn”或它的某一个依赖项。流入了不在清单中的模块

问题描述 未能加载文件或程序集"SharpSvn"或它的某一个依赖项.流入了不在清单中的模块 说明: 执行当前 Web 请求期间,出现未经处理的异常.请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息. 异常详细信息: System.IO.FileLoadException: 未能加载文件或程序集"SharpSvn"或它的某一个依赖项.流入了不在清单中的模块. (异常来自 HRESULT:0x80131043) 源错误: 执行当前 Web 请求期

简单掌握Python中glob模块查找文件路径的用法_python

glob使用UNIX shell规则查找与一个模式匹配的文件名.只要程序需要查找文件系统中名字与某个模式匹配的一组文件,就可以使用这个模块. glob的模式规则与re模块使用的正则表达式不相同.glob模式遵循标准UNIX路径扩展规则.只是用几个特殊字符来实现两个不同的通配符和字符区间.模式规则要应用于文件名中的段.模式中的路径可以是相对路径或绝对路径. shell变量名和波浪线都不会扩展. 基本用法 1.glob.glob(pathname), 返回所有匹配的文件路径列表.它只有一个参数pat

Node.js中的模块机制学习笔记_node.js

Javascript自诞生以来,曾经没有人拿它当做一门编程语言.在Web 1.0时代,这种脚本语言主要被用来做表单验证和网页特效.直到Web 2.0时代,前端工程师利用它大大提升了网页上的用户体验,JS才被广泛重视起来.在JS逐渐流行的过程中,它大致经历了工具类库.组件库.前端框架.前端应用的变迁.Javascript先天就缺乏一项功能:模块,而CommonJS规范的出现则弥补了这一缺陷.本文将介绍CommonJS规范及Node的模块机制. 在其他高级语言中,Java有类文件,Python有im

Lua中的模块(module)和包(package)详解_Lua

前言 从Lua5.1版本开始,就对模块和包添加了新的支持,可是使用require和module来定义和使用模块和包.require用于使用模块,module用于创建模块.简单的说,一个模块就是一个程序库,可以通过require来加载.然后便得到了一个全局变量,表示一个table.这个table就像是一个命名空间,其内容就是模块中导出的所有东西,比如函数和常量,一个符合规范的模块还应使require返回这个table.现在就来具体的总结一下require和module这两个函数. require函

介绍Ruby中的模块与混合类型的相关知识_ruby专题

模块是组合在一起的方法,类和常量.模块两个主要好处:     模块提供了一个命名空间,并避免名称冲突.     模块实现混合工厂. 模块定义了一个命名空间,一个沙箱中方法和常量可以自由使用,而不必担心踩到其他的方法和常数. 语法: module Identifier statement1 statement2 ........... end 就像被命名为类常量模块中的常量,首字母大写.定义的方法看起来很相似,模块定义方法就像类的方法. 调用一个模块方法和类方法一样,通过模块的名称它名字前,引用一

详解AngularJS中module模块的导入导出_AngularJS

AngularJS是一款来自Google的前端JS框架,它的核心特性有:MVC.双向数据绑定.指令和语义化标签.模块化工具.依赖注入.HTML模板,以及对常用工具的封装,例如$http.$cookies.$location等. 关于AngularJS中module的导入导出,在Bob告诉我之前还没写过,谢谢Bob在这方面的指导,给到我案例代码. 在AngularJS实际项目中,我们可能需要把针对某个领域的各个方面放在不同的module中,然后把各个module汇总到该领域的一个文件中,再由主mo

Python中threading模块join函数用法实例分析

  本文实例讲述了Python中threading模块join函数用法.分享给大家供大家参考.具体分析如下: join的作用是众所周知的,阻塞进程直到线程执行完毕.通用的做法是我们启动一批线程,最后join这些线程结束,例如: ? 1 2 3 4 5 6 7 8 9 for i in range(10): t = ThreadTest(i) thread_arr.append(t)   for i in range(10): thread_arr[i].start()   for i in ra

.NET中多模块分布式系统的简单服务访问:OSGI原形

先描述一下本篇描述的适用场景(3台server, 各个模块分布在各个Server上 ,分布式模块互相依赖.交互的场景): 多个OSIG引擎交互上,使用的是.net remoting实现的,原理: 当请求某个接口时(也就是要获取某Service Instance时),OSGI通过 remoting连接到提供这个服务的url上,如:tcp://localhost:8888/OSGI 连接成功后,源OSGI发送OpenService命令,让目标OSGI注册TCP Channel 根据接口type.dl