Covariance and Contra-variance
What is covariance and contra-variance in .NET Framework 4.0 with example for each.
Expert
In .NET 4.0, CLR supports contra variance and covariance of types in the generic interfaces and delegates.
Covariance allows you to cast the generic type to its base types, that is, instance of type IEnumerable<Tl> can be assigned to a variable of type IEnumerable<T2> where, T1 derives from T2. For example, IEnumerable<string> str1= new List<string> (); IEnumerable<object> str2= str1;
Contravariance permits you to assign a variable of Action<base> to a variable of type Action<derived>. For illustration, IComparer<object> obj1 = GetComparer() IComparer<string> obj2 = obj1;
.NET framework 4.0 uses some language keywords (out and in) to annotate contra- variance and covariance. “Out” is used for covariance, while “in” is used for contra-variance. Variance is applied only to generic interfaces, reference types and generic delegates. These cannot be applied to generic types and value types.
What is connection pooling? And name the pre-requisites used for connection pooling?
Briefly describe contra-variance and covariance in .NET Framework 4.0 and give an example for both?
Explain about the DataAdapter class in ADO.NET.
What do you mean by the term base class of .net?
Illustrate the term Marshalling?
Briefly explain ADO.NET and its features?
Define is IIS and also explains its uses?
What is the duration for items stored in the ViewState?
Differentiate between publishing and deploying an application?
What is the function of Orientation property in a Menu control?
18,76,764
1951198 Asked
3,689
Active Tutors
1436335
Questions Answered
Start Excelling in your courses, Ask an Expert and get answers for your homework and assignments!!