首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >隐藏第三方空名称空间

隐藏第三方空名称空间
EN

Stack Overflow用户
提问于 2011-05-06 11:57:28
回答 3查看 134关注 0票数 1

当我将第三方库(Gibraltar.Agent)添加到VB.NET项目中时,会得到与当前代码相抵触的名称空间。

例如,命名空间Gibraltar.Agent.IS使下列代码无效:

代码语言:javascript
复制
  Assert.That("bla", [Is].EqualTo("bla"))

作为一种解决方案,我必须完全符合条件

代码语言:javascript
复制
  Assert.That("bla", Nunity.Frameworks.Is.EqualTo("bla"))

"I“命名空间也很烦人,它使下列名称空间无效:

代码语言:javascript
复制
  For i = 0 to 10 'valid without referencing Gibraltar.Agent
  For i as Integer = 0 to 10 'needed change after adding Gibraltar.Agent

如何隐藏不需要的第三方名称空间?

编辑

  • 我没有添加任何直布罗陀名称空间。
  • 以下几点也没有帮助: 进口= NUnit.Framework.Is
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-05-06 13:20:06

这些奇怪的命名空间是由一个混淆库创建的,该库由一个较早版本的VistaDB使用,该版本是直布罗陀代理中的ILMerged。为了节省空间,混淆器将两个字符的符号替换为VistaDB名称空间。

我们去年收购了VistaDB,现在可以随意修改其内部结构和构建过程。命名空间泄漏的问题将在直布罗陀3.0中得到解决。

杰伊辛科塔

奠基人

直布罗陀软件

票数 1
EN

Stack Overflow用户

发布于 2011-05-06 12:26:39

您可以创建一个新的类库,并围绕您使用的包装纸功能创建Gibraltar.Agent,然后只引用这个类库,而不是从其他项目中引用Gibraltar.Agent。

也见适配器模式

票数 2
EN

Stack Overflow用户

发布于 2011-05-06 12:09:16

只是不要在您的文件中Import这个名称空间。如果您在过去的某个时候激活了该命名空间以将其包含到项目设置中,则可能需要更改项目设置。

但根据文献资料的说法,这些令人反感的名字根本不存在。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5911064

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档