MCAD - Microsoft Certified Application Developer Questions

Q:

You responsible for maintaining an application that was written by a former colleague at XYZ.

 

The application reads from and writes to log files located on the local network. The original author included the following debugging code to facilitate maintenance:

try {
Debug.WriteLine(“Inside Try”);
throw(new IOException());}
catch (IOException e) {
Debug.WriteLine (“IOException Caught”);}
catch (Exception e) {
Debug.WriteLine(“Exception Caught”);}.
finally {
Debug.WriteLine (“Inside Finally”);}
Debug.WriteLine (“After End Try”);

 

Which output is produced by thus code?

A) Inside Try Exception Caught IOException Caught Inside Finally After End Try B) Inside Try Exception Caught Inside Finally After End Try
C) Inside Try IOException Caught Inside Finally After End Try D) Inside Try IOException Caught Inside Finally
 
Answer & Explanation Answer: C) Inside Try IOException Caught Inside Finally After End Try

Explanation:

First the try code runs. Then one single exception, the IOException occurs, not two exceptions.Then the Finally code segments executes. After Finally code bas been executed normal application resumes at the next line after the line that called the error. In this case, the After End Try code runs.

Report Error

View Answer Workspace Report Error Discuss

0 653
Q:

You develop an inventory management application called XYZManagement that will call a Microsoft SQL Server stored procedure named sp_GetDailyXYZSales. The stored procedure will run a query that returns your daily sales total as an output parameter. This total will be displayed to users in a message box.


Your application uses a SqlCommand object to run sp_GetDailyXYZSales. You write the
following code to call sp_GetDailyXYZSales:
SqlConnection cnn = new SqlConnection(myConnString);
SqlCommand cmd = new SqlCommand(“sp_GetDaily XYZ Sales”, cnn);
cmd.CommandType = CommandType.StoredProcedure;
SqlParameter prm = cmd.Parameters.Add(“@ItemTotal”,SqlDbType.Int);
prm.Direction = ParameterDirection.Output;
cnn.Open();
cmd.ExecuteNonQuery();


Now you must write additional code to access the output parameter. Which code segment should you use?

A) MessageBox.Show(?Total is: ? + cmd.Parameters[?@Output?].Value.ToString()); B) MessageBox.Show(?Total is: ? + cmd.Parameters[?@Output?].ToString());
C) MessageBox.Show(?Total is: ? + cmd.Parameters[?@ItemTotal? D) MessageBox.Show(?Total is: ? + cmd.Parameters[?@ItemTotal?
 
Answer & Explanation Answer: C) MessageBox.Show(?Total is: ? + cmd.Parameters[?@ItemTotal?

Explanation:

The @ItemTotal parameter is declared as an output parameter with SQL Server data type INT.We use the Value property of the SQLParameter class to retrieve the value of this parameter. We must also convert the INT value to a string value with the ToString method. We then supply this string to the MessageBox.Show method. 

 

Incorrect Answers


Option A, B:
The @ItemTotal parameter is the output parameter. Using @Output this way is incorrect. Output is a keyword and no variable named @Output has been declared.


Option D:
We must use the Value method to retrieve the value of the parameter..

Report Error

View Answer Workspace Report Error Discuss

0 640
Q:

You develop an enterprise application, called XYZApplication that includes a Windows Form presentation layer, middle-tier components for business logic and data access, and a Microsoft SQL Server database.


You are in the process of creating a middle-tier component that will execute the data access routines in your application. When data is passed to this component, the component will call several SQL Server stored procedures to perform database updates. All of these procedure calls run under the control of a single transaction.


The code for the middle-tier component will implement the following objects:
SqlConnection cn = new SqlConnection();
SqlTransaction tr;


If two users try to update the same data concurrently, inconsistencies such as phantom reads will occur. You must now add code to your component to specify the highest possible level of protection against such inconsistencies.
Which code segment should you use?

A) tr = cn.BeginTransaction(?ReadCommitted?); B) tr = cn.BeginTransaction(IsolationLevel.ReadCommitted);
C) tr = cn.BeginTransaction(IsolationLevel.Serializable); D) tr = cn.BeginTransaction(?Serializable?);
 
Answer & Explanation Answer: C) tr = cn.BeginTransaction(IsolationLevel.Serializable);

Explanation:

Serializable is the highest isolation transaction level. It provide the highest possible level of protection against concurrent data errors. The correct syntax to begin a transaction with this transaction isolation level is: cn.BeginTransaction(IsolationLevel.Serializable)

Report Error

View Answer Workspace Report Error Discuss

0 613
Q:

You use Visual Studio .NET to create an assembly, called XYZAssembly, that will be used by other applications, including a standard COM client application.


You must deploy your assembly on the COM application to a client computer. You must ensure that the COM application can instantiate components within the assembly as COM components.

What should you do?

A) Create a strong name of the assembly by using the Strong Name tool (Sn.exe). B) Generate a type library for the assembly by using the Type Library Importer (Tlbimp.exe). Register the file on the client computer.
C) Generate a registry file for the assembly by using the Assembly Registration tool (Regasm.exe) Register the file on the client computer. D) Deploy the assembly to the global assembly cache on the client computer. Add a reference to the assembly in the COM client application.
 
Answer & Explanation Answer: C) Generate a registry file for the assembly by using the Assembly Registration tool (Regasm.exe) Register the file on the client computer.

Explanation:

The Assembly Registration tool reads the metadata within an assembly and adds the necessary entries to the registry, which allows COM clients to create .NET Framework classes transparently. Once a class is registered, any COM client can use it as though the class were a COM class..

 

Incorrect Answers:

Option A:
The Strong Name tool helps sign assemblies with strong names.


Option B:
The Type Library Importer, tlbimp.exe, converts the type definitions found within a COM type library into equivalent definitions in a common language runtime assembly. It would not be useful in this scenario however.


Option D:
This would not allow the COM application to use the class.

Report Error

View Answer Workspace Report Error Discuss

0 603
Q:

You are a developer for a XYZ Inc that provides free software over the Internet. You are
developing en e-mail application that users all over the world can download.

 

The application displays text strings in the user interface. At run time, these text strings must appear in the language that is appropriate to the locale setting of the computer running the application.

 

You have resources to develop versions of the application for only four different cultures.

 

you must ensure that your application will also be usable by people of other cultures.
How should you prepare the application for deployment?

A) Package a different assembly for each culture. B) Package a different executable file for each culture.
C) Package a main assembly for source code and the default culture. Package satellite assemblies for the other cultures. D) Package a main assembly for source code. Package satellite assemblies for each culture.
 
Answer & Explanation Answer: C) Package a main assembly for source code and the default culture. Package satellite assemblies for the other cultures.

Explanation:

When you build a project, the resource files are compiled and then embedded in satellite assemblies, or assemblies which contain only the localized resources. The fallback resources are built into the main assembly, which also contains the application code.

Report Error

View Answer Workspace Report Error Discuss

0 597