Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.net 为什么模块中的此公共功能不可访问_.net_Wpf_Vb.net_Module_Access Modifiers - Fatal编程技术网

.net 为什么模块中的此公共功能不可访问

.net 为什么模块中的此公共功能不可访问,.net,wpf,vb.net,module,access-modifiers,.net,Wpf,Vb.net,Module,Access Modifiers,我有一个由几个有用的小实用程序组成的程序集。其中我有一个模块,包含一个简单的公共函数 Module FishTrackerConfigurations Public Function GetValueOfUseProductId As Boolean Return VtlGetUseProductId 'A simple private routine in the same module End Function End Module 当我从另一个项目(其中引用了此程序集)调用此函

我有一个由几个有用的小实用程序组成的程序集。其中我有一个模块,包含一个简单的公共函数

Module FishTrackerConfigurations

Public Function GetValueOfUseProductId As Boolean
    Return VtlGetUseProductId 'A simple private routine in the same module
End Function
End Module
当我从另一个项目(其中引用了此程序集)调用此函数时,我得到以下错误

Error   BC30390 'FishTrackerConfigurations.Public Function GetValueOfUseProductId() As Boolean' is not accessible in this context because it is 'Public'.   
该函数是从my projects Application.Xaml.VB文件中调用的,特别是在启动时的受保护覆盖子程序(如StartupEventArgs)例程中

我想知道为什么会发生这种情况。

虽然方法是
Public
,但模块(默认情况下)不是

您需要明确指定这一点:

Public Module FishTrackerConfigurations

谢谢你,Matt,我一直认为默认情况下模块是公共的,我将把它作为今天的新课程。在我接受它之前,你需要等待一段时间!如果你试图从模块单元测试函数,这也会烧掉你。