You are on page 1of 1

Candidate:

Total Score:
Interview Decision:

Technical Questions List


E = Easy, M = Medium, H = Hard
The concept is that we escalate within each category, choosing one from E, M, and H so that the other set is
available for a further interview.

GENERAL
H3. When will it explode?

ASP.NET (Self Assessment: Section Total: Section Avg: )


E1. Describe the difference between inline code and code behind in ASP.NET pages? In .NET 2.0?
Inline code is C# or VB directly on the aspx page while code behind uses a separate file (.cs or .vb
respectively).
E2. What is the ViewState?
A hidden form field that stores information about the controls to allow them to maintain their state
between postbacks.
E3. What is the difference between using Server.Transfer and Response.Redirect? What are the
side-effects?
Server.Transfer transfers the page processing to another page while Response.Redirect instructs the
clients browser to request the other page. Transfer stays on the server and thus requires no round
trip to the client and back while also maintaining a reference to the transferring pages members for
use in the transferred page. However, the clients browser history is ignorant of this transfer and
clicking on the browsers back button would have unexpected results.
M1. What is the difference between a DataSet and a DataReader? Which one is disconnected from
the database? How would you get data into a DataSet?
A DataSet is an in-memory representation of a relational database as complex as the programmer
desires. It is disconnected from the original data store and can handle multiple selects and
manipulations. To get data into a DataSet instantiate a DataAdapter most suited for the data store and
call its Fill() function. A DataReader is connected to the original data store and allows read-only,
forward-only access to the data. Incidentally, a DataReader is used behind the scenes by a
DataAdapter.
M2. What are all of the different ways for you to persist data between Post-backs?
Form fields, ViewState (directly), hidden html elements, ASP.NET HiddenFields, Session variables,
Application variables, query string, cookies, Profile properties, persisted files, database
M3. What were the 3 built-in Data Controls included in the .NET Framework 1.1? Of the 3, which is the
fastest to develop with? Which provides the capability for the richest user experience?
Which provides the best execution performance?
DataGrid, DataList, and Repeater. DataGrid is the fastest to develop with as most important functions
can be accomplished with Visual Studios WYSIWYG editor. The Repeater solely dependent on
html/css for its layout so it can appear any way the developer choose however, the DataList is almost
as configurable and has the ability for inline editing. The Repeater has slightly better performance
than the DataList and far greater performance than the DataGrid.
H1. What are the different types of Session management options available in ASP.NET? How are
they implemented? What are the consequences of using each?
InProc, State Server, SQL Server. InProc stores session info in memory on the local ASP.NET worker
process. State Server stores session info outside the ASP.NET worker process and is managed by a
Windows Service. SQL Server stores session info in a SQL Server database. InProc would not work if
using a server farm as session info is not shared amongst different servers. Session variables stored
in a State or SQL Server need to be serializable.
H2. Are you familiar with Typed DataSets? Please compare and contrast the differences between
using the standard DataSet and a Typed DataSet?
Yes, I am familiar with them. Typed DataSets allow access to a DataSets fields as strongly typed
members of that object. This prevents the need for writing type conversions before using a fields
data as well as allowing those fields to show up (e.g. in Intellisense) as properties of the DataSet at
the slight cost of maintaining a DataSets schema within the project.

C# (Self Assessment: Section Total: Section Avg: )


E1. Does C# support multiple inheritance?
No. Implementing multiple interfaces is not the same as multiple inheritance.

You might also like