What is CTS in .net?
Common Type System (CTS) describes how types are declared, used and managed. CTS facilitates cross-language integration, type safety, and high performance code execution. The CLS is a specification that defines the rules to support language integration. This is done in such a way, that programs written in any language (.NET compliant) can interoperate with one another. This also can take full advantage of inheritance, polymorphism, exceptions, and other features.
What is boxing and unboxing?
Boxing: Converting of Stack based values into the Heap
Based values i.e coverting of a value type to a reference
type is the Boxing.
int i = 10;
object obj = i; // boxing
int j = (int)obj; // unboxing
UnBoxing is vice versa.
Difference between managed & unmanaged code ?
A code that executed under the instructions of CLR is called
managed code.
A code that execute without the instruction of CLR is called
unmanaged code
What are the types of assemblies and where can u store them and how ?
There are three types of Assemblies.
1) Private - Assembly available only at "bin" folder of same application.
directory.
2) Shared - Assemblies in GAC
3) Satelite - Assembly in the specific directory of the
locale.
Can I write IL programs directly?
Yes. Peter Drayton posted this simple example to the DOTNET mailing list:
.assembly MyAssembly {}
.class MyApp {
.method static void Main() {
.entrypoint
ldstr "Hello, IL!"
call void System.Console::WriteLine(class System.Object)
ret
}
}
Just put this into a file called hello.il, and then run ilasm hello.il. An exe assembly will be generated.
What is strong name?
A name that consists of an assembly's identity—its simple text name, version number, and culture information (if provided)—strengthened by a public key and a digital signature generated over the assembly.
sn -k Testkey.snk