Few things to learn in .Net technology

Few things to learn in .Net technology

  1. Databases


1.1. Tables/Columns

1.2. Relationships

1.3. Keys

1.3.1. Primary Keys

1.3.2. Foreign Keys

1.4. Structured Query Language (SQL)

1.4.1. Syntax Formatting of SQL Naming Conventions Use of CASE





1.5. Aggregation

1.5.1. GROUP BY

1.5.2. CUBE




1.6. Ranking Functions




1.7.1. What are they?

1.7.2. Pros/Cons

1.7.3. Views vs Indexed Views (aka Persisted Views)

1.7.4. Use of the “WITH SCHEMABINDING” clause

1.7.5. Variance in how different editions of SQL Server treat views

1.8. Stored Procedures

1.8.1. What are they?

1.8.2. Pros/Cons of stored procedures over direct database access

1.8.3. What responsibilities should be the stored procedures have (i.e. not complex business logic?)

1.8.4. Use of return values and output parameters

1.9. User Defined Functions (UDFs)

1.9.1. What are they?

1.9.2. Pros/Cons of use in various scenarious (e.g. NEVER in select statements)

1.9.3. Use of the “WITH SCHEMABINDING” clause

1.9.4. CLR UDFs

1.10. Indexes

1.10.1. What are they ?

1.10.2. Pros/Cons in various scenarios (i.e. SELECT vs INSERT/UPDATE/DELETE)

1.10.3. Various Types of index

1.10.4. Fill Factors

1.11. Constraints Check Constraints Unique Constraints

1.12. Triggers

1.12.1. What are they?

1.12.2. Various types (DML vs DDL)

1.12.3. Why you should never use them!

1.13. Security

1.13.1. Logins

1.13.2. Users

1.13.3. Roles

1.13.4. Schemas

1.13.5. Permissions

1.14. Design

1.14.1. Normalisation

1.14.2. Choice of Primary Keys

1.14.3. Storage of unstructured data (XML, VARBINARY(MAX) etc)

1.14.4. ROWVERSION columns for optimistic concurrency

1.14.5. ROWGUID columns for replication

1.15. Best Practices

1.15.1. Use of sub queries/functions vs. JOINs vs. Ranking Functions

1.15.2. Use of SELECT *

1.15.3. DML Triggers Vs. OUTPUT clause

1.15.4. When to use temporary tables, table variables and Common Table Expressions (CTEs)


2. .NET

2.1. What is it?

2.2. Languages

2.3. Versions

2.4. CLR + versions

2.5. Important Framework Namespaces/Classes (Foundation exam stuff)


3. C#

3.1. Object Oriented Programming (OOP)

3.1.1. Inheritance

3.1.2. Polymorphism

3.1.3. Interfaces

3.1.4. Abstract Classes

3.1.5. Partial Classes

3.2. Syntax

3.2.1. Formatting


3.2.3. XML Comments

3.2.4. User of CASE

3.2.5. Namespaces

3.2.6. Classes/Structs

3.2.7. Instance/Static Properties

3.2.8. Constructors

3.2.9. Instance/Static Methods

3.2.10. Delegates

3.2.11. Events

3.2.12. Lambda syntax

3.2.13. LInQ syntax

3.3. Naming conventions

3.3.1. Standards document

3.4. Configuration

3.4.1. Purpose of app.config/web.config files

3.4.2. How to read configuration files code

3.4.3. Encrypting sensitive sections of the config files

3.5. Concurrency

3.5.1. What are threads?

3.5.2. Thread safety

3.5.3. Thread Pool

3.5.4. Task Parallel Library (TPL)



4.1. What is it?

4.2. How to connect to a database using SqlClient and/or ODBC connectors

4.3. How to send a command to the database

4.4. How to read the returned results

4.4.1. DataReader

4.4.2. DataTable

4.4.3. DataSet

4.4.4. Output Parameters

4.4.5. Return Values


5. Windows Services

5.1. What are they?

5.2. When should they be used in a solution?


6. Windows Forms/WPF

6.1. What are they?

6.2. For what sort of projects should you recommend a Forms/WPF solution?



7.1. What is it?

7.2. For what sort of projects should you recommend an ASP.NET solution?

7.3. Web Site vs Web Application

7.4. Pages

7.4.1. How to write an aspx page

7.4.2. What goes into an aspx page and what doesn’t (e.g. presentation)

7.4.3. How to link to a code behind file

7.4.4. Master Pages

7.4.5. ASCX controls

7.5. ASP.NET page lifecycle

7.5.1. Init

7.5.2. Load State

7.5.3. Process Post Data

7.5.4. Load

7.5.5. 2nd Process Post Data

7.5.6. Change Events

7.5.7. Postback Events

7.5.8. PreRender

7.5.9. Render

7.5.10. Unload

7.5.11. How master pages/controls fit into this lifecycle

7.6. Cascading Style Sheets (CSS)

7.6.1. What is CSS

7.6.2. Never put presentation code in the aspx pages

7.6.3. Which versions of CSS are supported by which browsers

7.6.4. What are the new CSS 3.0 commands available (e.g. FlexBox)


8. Entity Framework

8.1. What is it?

8.2. Logical Model Vs Physical Model

8.3. Entity SQL

8.4. What is the role of the ObjectContext?

8.5. How to call stored procedures etc

8.6. In what sort of system architectures is EF particularly useful


9. Windows Workflow Foundation (WF)

9.1. What is it?

9.2. Pros/Cons over “hard coded” business processes

9.3. Persistence/Inflation of in-progress workflows


10. Business Objects

10.1. What is a business object? (i.e. encapsulation of behaviour… not data!)

10.2. Pros/Cons of using business objects

10.3. Behaviours that a business object contain (business rules validation, persistence, rollback etc.)

10.4. Behaviours that a business object NOT contain (processes spanning multiple business objects)

10.5. CSLA Framework (C# 2008 Business Objects)


11. Systems Design

11.1. Standard n-Tier architecture

11.1.1. UI

11.1.2. Workflow Process Layer

11.1.3. Business Layer

11.1.4. Data Layer

11.1.5. Database

11.2. Patterns

11.2.1. Object Creation Patterns Factory Singleton/Multiton Prototype

11.2.2. Structural Patterns Decorator Adapter Bridge Facade

11.2.3. Behavioural Patterns Producer/Consumer (aka Observer) Iterator Strategy Command Mediator Unit of Work


12. Algorithm Design

12.1. Check if there’s an existing algorithm that does what you need (either in the Framework, your solution or online)

12.2. Design your algorithm to be as fast/memory efficient as possible, whilst making sure it is very easy to understand! (i.e. maintainability comes first!)

12.3. Where an algorithm needs to be optimised, make sure comment to say what you’re doing any why

12.4. Choose what you optimise for (e.g. speed or memory usage?)


13. Interoperability

13.1. Web services

13.1.1. What are they?

13.1.2. Different protocols SOAP REST JSON

13.1.3. What Protocols?

13.2. WCF

13.2.1. What is it?

13.2.2. Different protocols that can be used HTTP TCP

13.2.3. Contracts Operation Contracts Object Contracts

13.2.4. Consuming Contracts in a Client app

13.3. Office Interop


14. Security

14.1. Authentication/Authorisation

14.1.1. Methods of authentication

14.1.2. Use of multiple factors of authentication

14.1.3. Different types of authentication Windows Forms Windows Identity Foundation Other External Identity Provider

14.1.4. Authentication requirements for different systems Windows SQL Server Web Applications Web Services/WCF Services Windows Forms / WPF Applications

14.2. General

14.2.1. Attacks External Code Execution

a. Uploading of code/files which is then executed – e.g. SQL injection

b. Providing URLs which are then downloaded by the system Buffer Overflow

Invalid values being input into numerical/date fields (or simply too much text in a text field) may cause buffer overflow and allow external code to be run

14.2.2. Error Messages

Error messages that are displayed to the user must not contain information about the internal workings of the system (no stack traces!)

14.2.3. Credentials Usernames/Passwords should never be stored together Passwords should never be stored in plain text

14.2.4. Logging Ensuring that the security of log files is also considered

14.3. Web Security

14.3.1. SSL What is it? How does it work? Certificates

14.3.2. Web Hardening Firewalls IIS configuration Only listen on the necessary ports Do not allow outbound connections unless necessary Disabling SSL 3.0 and below Disabling HTTP headers that expose the technology being used

14.3.3. Attacks Man-in-the-Middle Man-in-the-Browser (Trojans etc) Automated Bots Session hijacking Cross Site Scripting Cross Site Request Forgery Social Engineering Phishing/Vishing/SMiShing Username/Password re-use Denial of Service


15. XML

15.1. What is it?

15.2. Pros/Cons over other data transfer formats (e.g. csv)

15.3. Namespaces

15.4. Elements

15.5. Attributes

15.6. Values

15.7. XML Schema Documents (XSD)

15.8. XSL Transformation Documents (XSLT)

Stay tuned for more !

Some good.NET Interview questions


  1. What are the core concepts of OOPs?
  2. What is Encapsulation?
  3. Types of Polymorphism
  4. Diff between association and aggregation
  5. Can you make a Pure Virtual function static?
  6. How to hide the base class functionality in the inherited class?
  7. Can a non-static class have static constructor? If yes then can it be parameterized?

.Net Windows Apps

  1. What is CTS?
  2. What is Validation summary in .Net?
  3. Events are Methods (T/F)? Do events have return data types?
  4. What is ORM?
  5. What is a delegate or what is it used for?
  6. What is a Shared assembly? Where is it placed?
  7. What is boxing or unboxing?
  8. How is exception handling done in .Net?
  9. What are optional parameters?

.Net Web Apps

  1. What is a cookie / session? Which is used when?
  2. What is a master page?
  3. Can I have multiple web.config files in an application?
  4. What is Enum? What will be the 1st value of the enum member?
  5. What is the isPostback property?
  6. What is a .css file? How will you write an inline style sheet?


  1. In which assembly is MVC framework defined?
  2. What is the file extension of Razor views in MVC?
  3. What is the role of a controller in MVC?

.Net Web Services

  1. What is difference between WCF services and web services
  2. What is full form of REST?

SQL Server & SSRS

  1. What is DML? Give types of DML commands?
  2. Can I have multiple columns in a Primary key? ( T/F) Can I have multiple primary keys?
  3. If I have Boolean values to store what will be the datatype of the field?
  4. Difference between TRUNCATE and DELETE?
  5. What is the use of GROUP BY clause?
  6. In a Employee table you have following:

    EmpName, EmpAge, DeptName, Salary

    How will you perform the following?

    1. Count the number of departments
    2. Display the name of highest paid employee(s) in each Department


    Consider another table: Department ( DeptName, Location)

    1. Increase salary of all the employees in Mumbai by 5%


  7. What is a View?
  8. What is use of SQL Profiler?
  9. What is a shared datasource in rdl file?

Scripting Languages

  1. What is AJAX?
  2. In javascript how do you get the reference of any specific html object?
  3. What is jQuery?
  4. What is meaning of #btnNew in jQuery?

Silverlight / CRM / Sharepoint

  1. What is XAML?
  2. Which .js file do you include for Silverlight applications?

TS / Design Patterns

  1. What are Source control tools?
  2. How do you see the change done by you on a file?

Testing / Deployment concepts

  1. Where is the bin folder created when you compile an application?
  2. If you have to do Unit testing what type of thing will you check?
  3. Which testing tools are you aware of? Which testing frameworks have you worked on?




  1. What is advantage of DNN?
  2. Which version of .Net has DNN compatibility with?
  3. What is MVVM?
  4. Differentiate between MVC and MVVM

Stay tuned for answers. Happy programming!