2009-11-25 75 views
0

是否可以将用户定义的属性添加到My.Application或My.User对象?是否可以向My.Application或My.User添加属性?

我有一些目前定义的属性告诉我应用程序运行在什么环境(即“开发”,“测试”,“生产”等),用户是否是管理员等。似乎顺理成章地得到这个东西像信息

Dim current = My.Application.EnviornmentName 

If My.User.IsAdministrator Then ... 

而不是让它们在一个单独的类定义,因为他们现在的。有没有办法将我自己的属性添加到这些对象?

回答

2

我不确定VB.NET,但VB.NET可以使用扩展吗?如果是这样,请使用它为环境添加额外的功能。

希望这有助于 最好的问候, 汤姆

+0

是的,它可以看到http://msdn.microsoft.com/en-us/library/bb384936.aspx – ScottS 2009-11-25 20:39:43

+0

正是我一直在寻找。我在我的项目的其他地方使用了扩展方法,在这个例子中,我甚至没有将它应用。感谢您的正确方向。 – gfrizzle 2009-11-25 21:11:46

+0

不客气!祝你好运,你的编码,gfrizzle。 :) – t0mm13b 2009-11-25 21:15:36

0

我敢肯定,你可以做这样的事情,你需要重复的命名空间,我不知道是什么样的麻烦你会进入。

Namespace My 
Public Class User 
    Inherits Microsoft.VisualBasic.ApplicationServices.User 
    Public Shared Function IsAdministrator() As Boolean 
     Dim myUser As New Microsoft.VisualBasic.ApplicationServices.User 
     If myUser.IsAuthenticated Then 
      If myUser.IsInRole("Administrators") Then 
       Return True 
      End If 
      Return False 
     End If 
    End Function 
End Class 
End Namespace 
+0

如何让应用程序使用新类而不是标准用户类? – ScottS 2009-11-26 09:14:08

+0

我必须仔细检查,但是当我尝试这个时,它看起来像两个都可用。通过继承标准ApplicationServices.User,它将获得orig类的所有属性。 这基本上是扩展这个类 – zimmer62 2009-11-29 17:16:02

相关问题