5 12365
Bob, how do you find the root namespace at runtime?
Root namespace of what?
You can get the namespace of a type, by looking at the methods & properties
of System.Type, specifically the Namespace property.
You can use Object.GetType to get the type of any object.
For example to get the namespace of a String variable, you can use:
Dim s As String = "Hello World"
Dim [namespace] As String = s.GetType().Nam espace
Or the GetType keyword to get a System.Type from a type identifier.
For example to get the namespace of the main form class, you can use:
Dim [namespace] As String = GetType(MainFor m).Namespace
Hope this helps
Jay
"Bob" <no***@nowhere. com> wrote in message
news:ea******** ******@TK2MSFTN GP10.phx.gbl... how do you find the root namespace at runtime?
"Jay B. Harlow [MVP - Outlook]" <Ja************ @msn.com> wrote in message
news:%2******** ********@TK2MSF TNGP11.phx.gbl. .. Bob, how do you find the root namespace at runtime? Root namespace of what?
The project that created the currently executing assembly.
In the property pages of a project, available by right-clicking one one and
selecting 'properties', under 'common properties'/'general' there is a place
you can enter a 'Root Namespace'. I would like access to this at runtime.
Bob
Bob,
Have you tried using my second example?
For example to get the namespace of the main form class, you can use:
Dim [namespace] As String = GetType(MainFor m).Namespace
MainForm is the name of your startup object (as set in Project Properties).
Hope this helps
Jay
"Bob" <no***@nowhere. com> wrote in message
news:uy******** ******@TK2MSFTN GP12.phx.gbl... "Jay B. Harlow [MVP - Outlook]" <Ja************ @msn.com> wrote in message news:%2******** ********@TK2MSF TNGP11.phx.gbl. .. Bob, > how do you find the root namespace at runtime? Root namespace of what?
The project that created the currently executing assembly.
In the property pages of a project, available by right-clicking one one and selecting 'properties', under 'common properties'/'general' there is a place you can enter a 'Root Namespace'. I would like access to this at runtime.
Bob
You mean something like this -
Dim asm As [Assembly] = System.Reflecti on.Assembly.Get EntryAssembly
MsgBox(asm.Entr yPoint.Declarin gType.Namespace )
But there is no guarantee that the assembly's startup object is not
contained within a deeper namespace than the root.
Um... hmmm. I guess this will work if I make sure to exclude any types from
referenced assemblies (not shown). The shortest Namespace will probably be
the root. Ugh, but again no guarantee...
Dim asm As [Assembly] = '<some assembly>
Dim Root As String
For Each t As Type In asm.GetTypes
If Root Is Nothing Then
Root = t.GetType.Names pace
Else
If Root.Length > t.FullName.Leng th Then
Root = t.FullName
End If
End If
Next
MsgBox(Root)
I guess I'll have to call this good enough.
Thanks,
Bob
"Jay B. Harlow [MVP - Outlook]" <Ja************ @msn.com> wrote in message
news:u9******** ******@TK2MSFTN GP15.phx.gbl... Bob, Have you tried using my second example?
For example to get the namespace of the main form class, you can use:
Dim [namespace] As String = GetType(MainFor m).Namespace
MainForm is the name of your startup object (as set in Project
Properties). Hope this helps Jay "Bob" <no***@nowhere. com> wrote in message news:uy******** ******@TK2MSFTN GP12.phx.gbl... "Jay B. Harlow [MVP - Outlook]" <Ja************ @msn.com> wrote in
message news:%2******** ********@TK2MSF TNGP11.phx.gbl. .. Bob, > how do you find the root namespace at runtime? Root namespace of what?
The project that created the currently executing assembly.
In the property pages of a project, available by right-clicking one one and selecting 'properties', under 'common properties'/'general' there is a place you can enter a 'Root Namespace'. I would like access to this at
runtime. Bob
Bob, You mean something like this -
Dim asm As [Assembly] = System.Reflecti on.Assembly.Get EntryAssembly MsgBox(asm.Entr yPoint.Declarin gType.Namespace )
No I meant exactly what I showed! Of course the above doesn't require you to
know the startup class.
But there is no guarantee that the assembly's startup object is not contained within a deeper namespace than the root.
Then don't use the startup object, use a different class that is not
qualified with a namespace. I offered the startup object as its one known
object to exist in your project.
The shortest Namespace will probably be the root. Ugh, but again no guarantee...
Most of my projects have 2 or more namespaces for the root namespace, as the
root namespace tends to be: company.solutio n.project.
I guess I'll have to call this good enough.
Bingo!
I have to ask: Does it really matter what the root namespace is? What do you
really need or want it for? (Do you really need it?)
As you found, there is no real guaranteed way of finding it. I offered the
GetType(SomeTyp e).Namespace as it is "close enough" for most VB.NET
developers, of course it will fail in source files that include a Namespace
statement, the workaround of course is to put GetType(SomeTyp e).Namespace in
SomeType, and do not explicitly put SomeType in a namespace.
Hope this helps
Jay
"Bob" <no***@nowhere. com> wrote in message
news:eT******** ******@TK2MSFTN GP11.phx.gbl... You mean something like this -
Dim asm As [Assembly] = System.Reflecti on.Assembly.Get EntryAssembly MsgBox(asm.Entr yPoint.Declarin gType.Namespace )
But there is no guarantee that the assembly's startup object is not contained within a deeper namespace than the root.
Um... hmmm. I guess this will work if I make sure to exclude any types from referenced assemblies (not shown). The shortest Namespace will probably be the root. Ugh, but again no guarantee...
Dim asm As [Assembly] = '<some assembly> Dim Root As String For Each t As Type In asm.GetTypes If Root Is Nothing Then Root = t.GetType.Names pace Else If Root.Length > t.FullName.Leng th Then Root = t.FullName End If End If Next MsgBox(Root)
I guess I'll have to call this good enough.
Thanks, Bob
"Jay B. Harlow [MVP - Outlook]" <Ja************ @msn.com> wrote in message news:u9******** ******@TK2MSFTN GP15.phx.gbl... Bob, Have you tried using my second example?
For example to get the namespace of the main form class, you can use:
Dim [namespace] As String = GetType(MainFor m).Namespace
MainForm is the name of your startup object (as set in Project Properties). Hope this helps Jay "Bob" <no***@nowhere. com> wrote in message news:uy******** ******@TK2MSFTN GP12.phx.gbl... > "Jay B. Harlow [MVP - Outlook]" <Ja************ @msn.com> wrote in message > news:%2******** ********@TK2MSF TNGP11.phx.gbl. .. >> Bob, >> > how do you find the root namespace at runtime? >> Root namespace of what? > > The project that created the currently executing assembly. > > In the property pages of a project, available by right-clicking one one > and > selecting 'properties', under 'common properties'/'general' there is a > place > you can enter a 'Root Namespace'. I would like access to this at runtime. > > Bob > >
This thread has been closed and replies have been disabled. Please start a new discussion. Similar topics |
by: Randy |
last post by:
Is there a way to retrieve the root namespace during runtime? I'm trying to
generalize a function and
System.Reflection.Assembly.GetExecutingAssembly.GetManifestResourceStream()
method requires the full namespace path for embedded resources.
-Randy
|
by: Matty |
last post by:
I have successfully written a couple of Web services that work fine on
my localhost so this is not a security issue.
My problem only arises when I set the Root Namespace of a Web service
to something along the lines of .... system.webservices.myservice
When I do this and call the service via debug or from an aspx page I
get the error...Could not load type 'system.service.Global'
If I change the Root namespace back to myservice it...
|
by: Lee Moody |
last post by:
Does anyone know where I can access programmically the
value stored in the "Root Namespace" parameter of the
project's common properties? To find this within the IDE,
select your project name under the solution explorer,
right click, select properties, the first form that comes
up has the value stored in the "Root Namespace" field. I
need to find out how to find this value using code.
Thanks in advance.
|
by: Rafael Pivato |
last post by:
Can I have two Class Libraries to share the same root namespace ?
I want something like this:
MySystem (root namespace)
MyBO (class library A)
MyDS (class library B)
MyUS (class library C)
|
by: CCJohn |
last post by:
Hi, I find that while I can use the "Namespace...End Namespace" inside my
code, there is also a "Root namespace" field in the project properties
dialog box under General.
So where should I put my REAL root namespace, or should I leave it blank, or
should I create any at all?
Please advice. Thanks in advance.
CCJohn
| |
by: Jeff Brown |
last post by:
Hi,
I suspect that this isn't possible, but I figured I'd ask.
My project has a root namespace, let's say it's "Root", that applies to
almost every source file (which is why I've set it as the project's root
namespace).
However, the project also includes a couple of source files whose contents
will live in an entirely different namespace, let's say the "Special"
|
by: Viet |
last post by:
Is it possible to instantiate an object from the Root namespace? I have a MS
Visual Studio 2002 vb.net project consisting of a dozen individual project
files and I would like to know how to transfer messages from project to
another within the Solution Explorer.
|
by: Brian Henry |
last post by:
Is there anyway to get the name of the rootname space of a loaded assembly
back as a string? thanks
|
by: gabe |
last post by:
Hi,
We have a number of projects that will use the default 'Root
Namespace' option in the project properties box. There will be a
common Master Page that will be used among the projects. I'd like to
be able to use the master page without including the root namespace in
the masterpage Page declaration. In the example below, 'TESTApp' is
the default Root namespace (the name of the project)
<%@ Page Language="vb"
|
by: Hystou |
last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can effortlessly switch the default language on Windows 10 without reinstalling. I'll walk you through it.
First, let's disable language synchronization. With a Microsoft account, language settings sync across devices. To prevent any complications,...
|
by: Hystou |
last post by:
Overview:
Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows Update option using the Control Panel or Settings app; it automatically checks for updates and installs any it finds, whether you like it or not. For most users, this new feature is actually very convenient. If you want to control the update process,...
| |
by: tracyyun |
last post by:
Dear forum friends,
With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each protocol has its own unique characteristics and advantages, but as a user who is planning to build a smart home system, I am a bit confused by the choice of these technologies. I'm particularly interested in Zigbee because I've heard it does some...
|
by: agi2029 |
last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing, and deployment—without human intervention. Imagine an AI that can take a project description, break it down, write the code, debug it, and then launch it, all on its own....
Now, this would greatly impact the work of software developers. The idea...
|
by: isladogs |
last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM).
In this session, we are pleased to welcome a new presenter, Adolph Dupré who will be discussing some powerful techniques for using class modules.
He will explain when you may want to use classes instead of User Defined Types (UDT). For example, to manage the data in unbound forms.
Adolph will...
|
by: TSSRALBI |
last post by:
Hello
I'm a network technician in training and I need your help.
I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs.
The last exercise I practiced was to create a LAN-to-LAN VPN between two Pfsense firewalls, by using IPSEC protocols.
I succeeded, with both firewalls in the same network. But I'm wondering if it's possible to do the same thing, with 2 Pfsense firewalls...
|
by: 6302768590 |
last post by:
Hai team
i want code for transfer the data from one system to another through IP address by using C# our system has to for every 5mins then we have to update the data what the data is updated we have to send another system
|
by: muto222 |
last post by:
How can i add a mobile payment intergratation into php mysql website.
| |
by: bsmnconsultancy |
last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence can significantly impact your brand's success. BSMN Consultancy, a leader in Website Development in Toronto offers valuable insights into creating effective websites that not only look great but also perform exceptionally well. In this comprehensive...
| |