The 70-315 Cram Sheet

This Cram Sheet contains the distilled, key facts about developing and implementing Web applications with Microsoft Visual C# .NET and Microsoft Visual Studio .NET. Review this information as the last thing you do before you enter the testing center, paying special attention to those areas where you feel you need the most review. You can transfer any of these facts from your head onto a blank sheet of paper immediately before you begin the exam.

  • Each ASPX page is dynamically converted to a class that derives its basic functionality from the System.Web.UI.Page class.

  • The Page directive is used to specify page- related attributes that help compilers know how an ASP.NET page is to be compiled and executed.

  • The Inherits attribute of the Page directive specifies the code-behind class for the ASPX page. The Src attribute of the Page directive specifies the path to the code-behind file. If you are precompiling the code-behind file, you don't specify the Src attribute.

  • To make an HTML control run as a server control, apply the runat ="server" attribute to the HTML control.

  • Only some HTML server controls raise events on the server side; an HTML control can raise either a ServerClick event or ServerChange event.

  • When the AutoPostBack property of the ASP.NET Web server controls is set to true , it causes an immediate postback and allows the Web server to immediately respond to change events without waiting for a click event to cause a page postback.

  • The preferred way to add client-side event-handling code for Web server controls is via the the Attributes property of the Web server controls.

  • To set properties on a control at runtime, you use the control.property = value syntax.

  • To load controls dynamically on a Web form, create the controls and add them to the Controls collection of a container control, such as Page , Panel , or Placeholder .

  • The Repeater and the DataList controls use templates to precisely format data from a collection. The DataBinder.Eval method is used to handle casts and formatting for data in a templated control.

  • You can import an ActiveX control to a Visual Studio .NET project by adding it to the Toolbox.

  • ActiveX controls are instantiated on the client, not the server. Any event handlers for the control must be written in a scripting language and will also execute on the client. ActiveX controls impose a performance penalty and have other drawbacks.

  • The Response.Redirect() method can be used to connect to any specified URL. The specified URL can point to any resource and contain query strings. The use of Response.Redirect() causes an additional round trip to the server.

  • The Server.Transfer() method performs a server-side redirection of a page and avoids an extra round trip.

  • The Server.Execute() method executes the specified ASPX file and then returns execution to the calling ASPX page.

  • The file specified as an argument to the Server.Execute() or the Server.Transfer() method must be an ASPX file residing on the same Web server, and the argument should not contain query string data.

  • You should set the EnableViewStateMac attribute of the Page directive to false for the destination page, in case of calling the page via Server.Execute() method or Server.Transfer() method with the second argument set to true .

  • ASP.NET uses a hidden input control named __VIEWSTATE to maintain state for all non-postback controls modified in the code.

  • You can use the ViewState property of the Page class to store page-level values. The ViewState property enables you to store structured data as long as the data is serializable.

  • You can use the Page.IsPostBack property to determine whether a page is being loaded for the first time or in response to a postback operation.

  • ASP.NET has a feature called smart navigation that can greatly enhance the user experience, such as eliminating flash and persisting control focus during postback of a Web page for users of Internet Explorer 5.0 or higher browsers.

  • Session variables let you store information across multiple browser requests . The default storage location for session state is in-process memory in the ASP.NET process itself. The session state can be scaled to support multiple Web servers in a Web farm by storing the state in a separate process or in a SQL Server database.

  • ASP.NET provides two ways to store global data : Application state and application data cache. The application data cache provides advanced features such as a cache expiration policy.

  • Validation controls provide sophisticated validation on both the client side and the server side, depending on the validation settings and the browser's capabilities.

  • The BaseValidator class serves as the base class for all the validation controls. This class provides the basic implementation of the validation controls.

  • The RequiredFieldValidator control can be used to check whether the input control contains an entry.

  • The RegularExpressionValidator control ensures that the associated input control's value matches a specified regular expression.

  • The RangeValidator control is used to check whether the input control contains a value in the specified range.

  • The CompareValidator control is used to compare the input server control's value against a data type, a fixed value, or another input control.

  • The CustomValidator control enables you to specify custom validation code to be executed during validation.

  • The ValidationSummary control is used to display a summary of all the validation errors of a Web page.

  • To iterate through the elements of a string in a world-ready application, you should use the GetTextElementEnumerator method of the StringInfo class.

  • SystemException represents the exceptions thrown by the CLR, whereas ApplicationException represents the exceptions thrown by the user programs.

  • The try block consists of code that can raise an exception. A try block should be immediately followed by one or more catch blocks or a finally block.

  • If multiple catch blocks are associated with a try block, the catch blocks should be arranged in the top-bottom order of specific to general exception types.

  • The throw statement is used to raise an exception. Throwing exceptions is a costly operation. Don't use exceptions just to manage normal program flow.

  • The finally block is used to enclose the code that needs to be run regardless of whether the exception is raised.

  • Custom error pages can be configured by using the customErrors element in the web.config file.

  • You can set a custom error Web page for individual pages in your application by using the ErrorPage attribute of the Page directive.

  • You can handle any unhandled error that occurs in a page by using the page's Error event handler.

  • Unhandled exceptions for an entire application can be trapped in the Application_Error event handler in the global.asax file.

  • The Server.CreateObject() method is used to create late-bound COM components. However, not all COM components can be instantiated with Server.CreateObject() . In particular, components that use the STA threading model will not function properly in ASP.NET pages unless you add a compatability directive to the page, such as <%@Page aspcompat="true"%> .

  • Using COM or COM+ components from .NET-managed code requires the creation of a runtime callable wrapper (RCW). RCWs impose a performance penalty on COM code.

  • You can create an RCW for a COM component by either using the Type Library Importer or directly referencing the COM component from your .NET code.

  • To use COM components you did not create, you should obtain a primary interop assembly (PIA) from the creator of the component.

  • You can use PInvoke to call functions from unmanaged libraries. The DllImport attribute tells the CLR where to find the implementation of the extern method by specifying the name of the library.

  • The CultureInfo object represents a culture in the .NET Framework.

  • The System.Text.Encoding class and its subclasses enable you to convert text from one encoding to another.

  • The .NET Framework provides partial support for mirroring through the RightToLeft property on forms and controls.

  • You can respond to an event by overriding the On method corresponding to an event. When you use this method, you should be sure to call the corresponding On method for the base class so that you don't miss any of the functionality of the base class when the event is raised.

  • You can also register events of the Page class by defining event handlers with specific names , such as Page_Init() , Page_Load() , and so on, by setting the AutoEventWireup attribute to true in the Page directive.

  • The global.asax file is the appropriate place to handle global events that are not specific to a Web form but rather apply to an application as a whole.

  • Web user controls let you encapsulate common blocks of user interface functionality for reuse. They must be contained within the project in which they are used.

  • Web custom controls are compiled components that offer support for almost all the features of the server controls that ship with Visual Studio .NET.

  • You can create a Web custom control by combining existing controls, by deriving it from an existing control, or by inheriting it directly from the WebControl class.

  • The DataSet object represents an entire relational database in memory. It's composed of DataTable , DataRelation , DataRow , and DataColumn objects.

  • The DataView object provides a filtered row of the data from a DataTable .

  • To persist changes from DataSet to the underlying database, you must call the Update method of the SqlDataAdapter object.

  • The UpdateCommand , InsertCommand , and DeleteCommand properties of the SqlDataAdapter object specifies a SqlCommand object to be executed for updating, inserting and deleting rows respectively.

  • The FileStream class treats a file as a raw, typeless stream of bytes.

  • The StreamReader and StreamWriter classes are optimized for textual data, whereas the BinaryReader and BinaryWriter classes are optimized for structured binary data.

  • Elements of an XML document can be represented by XmlNode objects. XmlNode objects are collected into an XmlDocument object, which is the object in the System.Xml namespace that represents an entire XML document.

  • You can also treat an XML document as relational data. To do this, you can use an XmlDataDocument class, which inherits from XmlDocument . The key feature of the XmlDataDocument class is that it can be synchronized with a DataSet .

  • The SqlException and SqlError objects provide the means to retrieve SQL Server[nd]specific error information.

  • The System.Web.TraceContext class can be used to display trace messages in an application. These messages can be easily viewed by using the trace viewer or at the end of the page output.

  • Tracing can be enabled at the application level by setting the trace element's enabled attribute to true in the applicationwide web.config file. To enable tracing for an individual page, you set the trace attribute to true in the Page directive.

  • Listeners are objects that receive trace and debug output. By default, one listener, DefaultTraceListener , is attached to the Trace and Debug classes and displays the messages in the Output window.

  • Debug and Trace objects share the same listeners collection. Therefore, any listener added to the Trace.Listeners collection is also added to the Debug.Listeners collection.

  • Trace switches enable you to change the type of messages traced by a program depending on the value stored in the XML configuration file. You don't need to recompile the application for this change to take effect.

  • The Trace and Debug classes from System.Diagnostics can be used to display informative messages in an application when the DEBUG and TRACE symbols are defined at the time of compilation.

  • By default, both TRACE and DEBUG symbols are defined in the Debug Configuration for compilation, and only the TRACE symbol is defined for the Release configuration of compilation.

  • Breakpoints enable you to mark code that signals the debugger to pause execution when it encounters them.

  • The various tool windows , such as Locals, Autos, Watch, and Call Stack, can be of great help in tracking the execution path and the status of variables when debugging an application in Visual Studio .NET.

  • Use the Exceptions dialog box to customize how the exceptions are thrown in your program.

  • You can attach a debugger to a running process (local or remote) with the help of the Processes dialog box.

  • The Custom Actions Editor enables you to add custom actions to be performed during the installation process. It allows you to run .dll , .exe , assembly , and scripts files.

  • The Launch Conditions editor enables you to set conditions to be evaluated when the installation begins on the target machine. If the conditions are not met, the installation stops.

  • The System.Configuration.Install. Installer class works as a base class for all the custom installers in the .NET Framework. The Install() method of this class is called when the application is installed, and the Uninstall() method is called when the application is uninstalled . The Commit() method is executed if the Install() method executes successfully; the Rollback() method is executed if the Install() method is not executed successfully.

  • If you add predefined installation components (for example, a PerformanceCounter installation component) to the Setup project, they are added to the Installers collection of the ProjectInstaller class.

  • Shared assemblies are used by multiple applications on a machine. They are placed in the GAC and enjoy special priviliges, such as file security (because they are placed in the System folder), shared location, and side-by-side versioning.

  • A shared assembly must be assigned a cryptographically strong name. Public/private key pairs are generated using the Strong Name tool ( sn.exe ). The pairs can then be used to digitally sign an assembly.

  • A shared assembly can be added to the GAC by using Windows Explorer, the .NET Framework Configuration tool, the Global Assembly Cache Tool ( gacutil.exe ), or the Windows Installer.

  • The CLR first searches the GAC to locate assemblies before looking in the files and folders where the application is installed. Thus, shared assemblies placed in the GAC are more efficient because the CLR does not look in the < codebase > and <probing> elements of the applicable configuration files.

  • Delay signing enables a shared assembly to be placed in the GAC by just signing the assembly with the public key. This allows the assembly to be signed with a private key at a later stage when the development process is complete and the component or assembly is ready to be deployed.

  • Merge modules enable you to create reusable components that help in deploying shared components. The merge modules cannot be directly installed; they need to be merged with installer programs of applications that use the component packed into the merge module.

  • To save memory and processing time, if your page doesn't depend on session state, disable it with the <@% Page EnableSessionState="false" %> attribute in the Page directive.

  • View state causes additional bytes to travel in each direction and therefore imposes a speed hit. You can avoid this penalty by setting the EnableViewState property of controls to false when you don't need their contents to persist.

  • Using StringBuilder can help you achieve noticeable performance gains in an application using extensive string manipulations.

  • Reduce the number of calls between the managed and unmanaged code, possibly by doing more work in each call rather than making frequent calls for doing small tasks .

  • Use the SqlClient managed provider rather than the generic OleDb managed provider to retrieve data from the SQL Server database.

  • SQL Server stored procedures are highly optimized for server-side data access, and their use usually improves data access performance significantly.

  • Run SQL Server's Profiler and Index Tuning Wizard to avoid any bottlenecks because of indexing. Also, use the SQL Server Query Analyzer to optimize a query's performance.

  • If you are reading a table sequentially, give preference to using DataReader over a DataSet .

  • The SQL Server .NET Data provider provides connection pooling to improve performance when connecting to a database. Use the same connection strings to connect to the database to utilize the performance gains provided by connection pooling.

  • You can use the ConfigurationSettings object to retrieve custom information from a configuration file.

  • The web.config file can appear in multiple directories on an ASP.NET Web application server. Each web.config file applies settings to its own directory and all child directories below it. The web.config files in child directories(can override or modify settings defined in parent directories..

  • The machine.config file contains settings that control the operation of .NET on the entire computer. For example, compiler settings for the .NET Framework are stored in this file.

  • Role-based security enables you to authorize access to resources based on user identity or group membership. Identity impersonation lets the ASP.NET process act as the authenticated user.

  • OutputCache directive enables you to cache the output of pages and user controls in a Web application. When an OutputCache directive is applied to an ASPX page, both the Duration and VaryByParam attributes must be specified. As opposed to this, in case of user controls, either the VaryByParam or VaryByControl attribute must be specified along with the Duration attribute.

  • Application data caching refers to caching arbitrary data. You can cache any object you want in ASP.NET by calling the Add or Insert method of the Cache object.



MCAD Developing and Implementing Web Applications with Visual C#. NET and Visual Studio. NET (Exam [... ]am 2)
MCAD Developing and Implementing Web Applications with Visual C#. NET and Visual Studio. NET (Exam [... ]am 2)
ISBN: 789729016
EAN: N/A
Year: 2005
Pages: 191

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net