女士们,先生们, 我正在尝试创建一个 DLL,我可以在几个不同的项目之间共享,其中包括我为简化代码而编写的各种扩展方法。了解此类 DLL 可以在 C# 和 VB.net 项目之间共享。然而,到目前为止我一直无法创建 DLL,甚至无法包含子项目并以这种方式引用它并能够访问我的扩展。
我能够在对象浏览器中看到引用,但导入语句不会将我的子项目引用作为选项显示出来。 VB.net 不允许我将扩展放在类中,而且我似乎无法在网上找到任何可以解释这一点的线索。提前致谢。
例子...
导入 System.Runtime.CompilerServices
导入 System.Text.RegularExpressions
模块扩展
公共(public)函数 ToEnum(Of T)(ByVal value As String) As T
尝试
返回 (CType([Enum].Parse(GetType(T), value.Replace("", ""), True), T))
Catch ex As 异常
返回 (CType([Enum].Parse(GetType(T), 0, True), T))
结束尝试
结束功能
终端模块
最佳答案
您需要使用 Public 关键字标记您的扩展模块。另外,请确保您的消费项目中的项目属性列出了您的库项目作为引用;仅出现在对象浏览器中并不意味着您已正确设置引用。
关于vb.net - 如何在 VB.net 中为扩展方法创建 DLL?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12224934/