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.
Differentiate the terms dynamic and var data types?
Name the different methods provided by a DataSet object to create XML?
Determine what is Message Contract in the WCF?
Elucidate Role based security?
Mention the two categories which distinctly classifies the variables of the C# programs.
Describe the naming conventions that are necessary for XML elements tags?
Explain how is docking different from the anchoring?
Explain the several methods required by the DataSet object for generating the XML?
What do you mean by the term MISL CODE? Describe in brief.
Write the major differences between the classic ADO and ADO.NET?
18,76,764
1951021 Asked
3,689
Active Tutors
1430643
Questions Answered
Start Excelling in your courses, Ask an Expert and get answers for your homework and assignments!!