Когда я запускаю мое приложение, чтобы проверить это, я перейти на страницу и получить эту ошибку:Ошибка времени выполнения; метод не является членом данного пространства имен
BC30456: 'CheckUserStatus' is not a member of 'UDPC'.
<%If UD.UDPC.CheckUserStatus(aIsPopup, "UDCMain.aspx", aReason) = False Then%>
Но если я использую Go To Definition
на CheckUserStatus
в Visual Studio он берет меня к декларации по этому способу, в другом классе в том же проекте, который определен как таковой:
Public Function CheckUserStatus(ByVal aIsPopup As Boolean, ByVal aFrom As String, ByRef aReason As String)
Return mCheckUserStatus(aIsPopup, aFrom, aReason)
End Function
mCheckUserStatus
определяется как таковой, в том же классе, что и предыдущий метод:
Public Function mCheckUserStatus(ByVal aIsPopup As Boolean, Optional ByVal aFrom As String = "", Optional ByRef aReason As String = "") As Boolean
// a bunch of logic to determine if mCheckUserStatus = true or false
End Function
Я новичок в VB, но у меня есть приличный опыт C#, но я не могу понять, что здесь не так.
Также, что-то, что я не понимаю, как CheckUserStatus
способен return mCheckUserStatus(...)
, когда As Boolean
не добавляется к объявлению метода?
Редактировать; Кажется, я просто нашел его. CheckUserStatus
является частью Public Module UDRequest
, но mCheckUSerStatus
является частью Module UDCommonLocal
- не является общедоступным модулем?
изменить2; Я попытался полностью квалифицировать его, изменив его на <% If ...UDRequest.CheckUserStatus...
, но это ничего не изменило.
Сделать эту функцию общедоступной ... иначе вам нужен экземпляр этого класса. Также включите опцию Strict youll. – Codexer
@ 436f6465786572 «Методы в модуле не могут быть разделены» - это то, что я получаю, если попытаюсь. – sab669
Является ли это публичным модулем? – Codexer