namespace_assembly_reference
Differences
This shows you the differences between two versions of the page.
Next revision | Previous revision | ||
namespace_assembly_reference [2018/06/26 04:58] – created wolfgangriedmann | namespace_assembly_reference [2020/02/12 05:15] (current) – wolfgangriedmann | ||
---|---|---|---|
Line 6: | Line 6: | ||
An assembly is simply a DLL (the concept of an entirely linked library as in VO does not exists anymore). | An assembly is simply a DLL (the concept of an entirely linked library as in VO does not exists anymore). | ||
Such an assembly can be: | Such an assembly can be: | ||
- | - one of the assemblies from the .NET framework, these are located in the GAC - the Global Assembly Cache. | + | * one of the assemblies from the .NET framework, these are located in the GAC - the Global Assembly Cache. |
- | - one of the other assemblies, located in the GAC | + | |
- | - somewhere on your disk. In this case both Visual Studio and XIDE need to copy it to the BIN directory | + | |
- | - in your current project (XIDE) or solution (Visual Studio). Then the DLL file is already in your BIN folder | + | |
Please note that your referenced assembly could need other assemblies, either from the GAC or from another location. | Please note that your referenced assembly could need other assemblies, either from the GAC or from another location. | ||
Line 15: | Line 15: | ||
All code in assemblies, included in your own executable, is organized in namespaces. | All code in assemblies, included in your own executable, is organized in namespaces. | ||
To be found, you need to either define the complete path included the namespace, like in | To be found, you need to either define the complete path included the namespace, like in | ||
- | [code]System.IO.File.WriteAllText( " | + | <code>System.IO.File.WriteAllText( " |
or to include the needed namespace at the top of your source code, and then use the class directly: | or to include the needed namespace at the top of your source code, and then use the class directly: | ||
- | [code]using System.IO | + | <code visualfoxpro> |
..... | ..... | ||
- | File.WriteAllText( " | + | File.WriteAllText( " |
If you use your own assemblies, you should look at the sources, but if it is either a .NET Framework assembly or a 3rd party assembly, please look at the documentation. | If you use your own assemblies, you should look at the sources, but if it is either a .NET Framework assembly or a 3rd party assembly, please look at the documentation. | ||
For the File class, the MSDN says: | For the File class, the MSDN says: | ||
- | [code]Namespace: | + | <code visualfoxpro> |
- | Assembly: | + | Assembly: |
+ | |||
+ | So to use the File class, you have to check two things: | ||
+ | * have the mscorlib.dll in your references | ||
+ | * either have a using System.IO at the begin of your source or use the full referenced class name | ||
+ | |||
+ | To make it easier for people migrating from VO the development team has added a special mechanism to the X# compiler (this was available also in the Vulcan compiler): an assembly can add an attribute that lists namespaces that should be treated as " | ||
+ | The XPorter automatically enables this option, so you can still use classes like DbServer and DataWindow without including using statements for these classes. | ||
+ | Vn2Ado also uses this mechanism. If you enable this option then you can use the Ado.. classes without extra using statement. | ||
namespace_assembly_reference.1529989083.txt.gz · Last modified: 2018/06/26 04:58 by wolfgangriedmann