Professional ASP.NET 3.5 in C# and Visual Basic Part 3 pptx

10 525 0
Professional ASP.NET 3.5 in C# and Visual Basic Part 3 pptx

Đang tải... (xem toàn văn)

Thông tin tài liệu

Evjen ftoc.tex V2 - 01/28/2008 5:00pm Page xxiv Contents Tracing from Components 1113 Trace Forwarding 1114 TraceListeners 1114 Diagnostic Switches 1119 Web Events 1121 Debugging 1122 What’s Required 1123 IIS versus ASP.NET Development Server 1124 Starting a Debugging Session 1125 New Tools to Help You with Debugging 1128 Client-side Javascript Debugging 1131 SQL Stored Proc Debugging 1134 Exception and Error Handling 1134 Handling Exceptions on a Page 1135 Handling Application Exceptions 1136 Http Status Codes 1137 Summary 1138 Chapter 25: File I/O and Streams 1139 Working with Drives, Directories, and Files 1140 The DriveInfo Class 1140 The Directory and DirectoryInfo Classes 1143 File and FileInfo 1149 Working with Paths 1154 File and Directory Properties, Attributes, and Access Control Lists 1158 Reading and Writing Files 1166 Streams 1167 Readers and Writers 1171 Compressing Streams 1176 Working with Serial Ports 1181 Network Communications 1182 WebRequest and WebResponse 1183 Sending Mail 1189 Summary 1190 Chapter 26: User and Server Controls 1193 User Controls 1194 Creating User Controls 1194 Interacting with User Controls 1196 Loading User Controls Dynamically 1198 xxiv Evjen ftoc.tex V2 - 01/28/2008 5:00pm Page xxv Contents Server Controls 1203 WebControl Project Setup 1204 Control Attributes 1209 Control Rendering 1210 Adding Tag Attributes 1214 Styling HTML 1217 Themes and Skins 1220 Adding Client-Side Features 1222 Detecting and Reacting to Browser Capabilities 1231 Using ViewState 1234 Raising PostBack Events 1238 Handling PostBack Data 1242 Composite Controls 1244 Templated Controls 1247 Creating Control Design-Time Experiences 1254 Summary 1273 Chapter 27: Modules and Handlers 1275 Processing HTTP Requests 1275 IIS 5/6 and ASP.NET 1275 IIS 7 and ASP.NET 1276 ASP.NET Request Processing 1277 HttpModules 1278 HttpHandlers 1289 Summary 1295 Chapter 28: Using Business Objects 1297 Using Business Objects in ASP.NET 3.5 1297 Creating Precompiled .NET Business Objects 1298 Using Precompiled Business Objects in Your ASP.NET Applications 1301 COM Interop: Using COM Within .NET 1302 The Runtime Callable Wrapper 1303 Using COM Objects in ASP.NET Code 1304 Error Handling 1309 Deploying COM Components with .NET Applications 1312 Using .NET from Unmanaged Code 1314 The COM-Callable Wrapper 1314 Using .NET Components Within COM Objects 1316 Early versus Late Binding 1320 xxv Evjen ftoc.tex V2 - 01/28/2008 5:00pm Page xxvi Contents Error Handling 1320 Deploying .NET Components with COM Applications 1322 Summary 1324 Chapter 29: Building and Consuming Services 1325 Communication Between Disparate Systems 1325 Building a Simple XML Web Service 1327 The WebService Page Directive 1328 Looking at the Base Web Service Class File 1329 Exposing Custom Datasets as SOAP 1330 The XML Web Service Interface 1333 Consuming a Simple XML Web Service 1336 Adding a Web Reference 1336 Invoking the Web Service from the Client Application 1338 Transport Protocols for Web Services 1341 HTTP-GET 1342 HTTP-POST 1344 SOAP 1345 Overloading WebMethods 1346 Caching Web Service Responses 1349 SOAP Headers 1350 Building a Web Service with SOAP Headers 1351 Consuming a Web Service Using SOAP Headers 1353 Requesting Web Services Using SOAP 1.2 1355 Consuming Web Services Asynchronously 1357 Windows Communication Foundation 1360 The Larger Move to SOA 1360 WCF Overview 1361 Building a WCF Service 1362 Building the WCF Consumer 1370 Adding a Service Reference 1370 Working with Data Contracts 1374 Namespaces 1379 Summary 1379 Chapter 30: Localization 1381 Cultures and Regions 1381 Understanding Culture Types 1382 The ASP.NET Threads 1383 Server-Side Culture Declarations 1386 Client-Side Culture Declarations 1387 Translating Values and Behaviors 1389 xxvi Evjen ftoc.tex V2 - 01/28/2008 5:00pm Page xxvii Contents ASP.NET 3.5 Resource Files 1397 Making Use of Local Resources 1397 Making Use of Global Resources 1403 Looking at the Resource Editor 1406 Summary 1407 Chapter 31: Configuration 1409 Configuration Overview 1410 Server Configuration Files 1411 Application Configuration File 1413 How Configuration Settings Are Applied 1414 Detecting Configuration File Changes 1415 Configuration File Format 1415 Common Configuration Settings 1416 Connecting Strings 1416 Configuring Session State 1417 Compilation Configuration 1421 Browser Capabilities 1423 Custom Errors 1426 Authentication 1427 Anonymous Identity 1430 Authorization 1430 Locking-Down Configuration Settings 1433 ASP.NET Page Configuration 1433 Include Files 1435 Configuring ASP.NET Runtime Settings 1436 Configuring the ASP.NET Worker Process 1438 Storing Application-Specific Settings 1440 Programming Configuration Files 1441 Protecting Configuration Settings 1448 Editing Configuration Files 1452 Creating Custom Sections 1453 Using the NameValueFileSectionHandler Object 1454 Using the DictionarySectionHandler Object 1456 Using the SingleTagSectionHandler Object 1457 Using Your Own Custom Configuration Handler 1458 Summary 1460 Chapter 32: Instrumentation 1461 Working with the Event Log 1461 Reading from the Event Log 1462 Writing to the Event Logs 1464 xxvii Evjen ftoc.tex V2 - 01/28/2008 5:00pm Page xxviii Contents Using Performance Counters 1468 Viewing Performance Counters Through an Administration Tool 1468 Building a Browser-Based Administrative Tool 1470 Application Tracing 1476 Understanding Health Monitoring 1477 The Health Monitoring Provider Model 1477 Health Monitoring Configuration 1479 Writing Events via Configuration: Running the Example 1486 Routing Events to SQL Server 1487 Buffering Web Events 1490 E-mailing Web Events 1492 Summary 1498 Chapter 33: Administration and Management 1499 The ASP.NET Web Site Administration Tool 1499 TheHomeTab 1501 The Security Tab 1501 The Application Tab 1510 The Provider Tab 1512 Configuring ASP.NET in IIS on Vista 1514 .NET Compilation 1517 .NET Globalization 1518 .NET Profile 1518 .NET Roles 1520 .NET Trust Levels 1520 .NET Users 1521 Application Settings 1522 Connection Strings 1523 Pages and Controls 1524 Providers 1524 Session State 1524 SMTP E-mail 1526 Summary 1527 Chapter 34: Packaging and Deploying ASP.NET Applications 1529 Deployment Pieces 1530 Steps to Take before Deploying 1530 Methods of Deploying Web Applications 1531 Using XCopy 1531 Using the VS Copy Web Site Option 1534 Deploying a Precompiled Web Application 1537 Building an Installer Program 1539 xxviii Evjen ftoc.tex V2 - 01/28/2008 5:00pm Page xxix Contents Looking More Closely at Installer Options 1547 Working with the Deployment Project Properties 1550 The File System Editor 1554 The Registry Editor 1557 The File Types Editor 1559 The User Interface Editor 1561 The Custom Actions Editor 1562 The Launch Conditions Editor 1564 Summary 1565 Appendix A: Migrating Older ASP.NET Projects 1567 Migrating Is Not Difficult 1567 Running Multiple Versions of the Framework Side by Side 1568 Upgrading Your ASP.NET Applications 1568 When Mixing Versions — Forms Authentication 1570 Upgrading — ASP.NET Reserved Folders 1571 ASP.NET 3.5 Pages Come as XHTML 1571 No Hard-Coded .js Files in ASP.NET 3.5 1573 Converting ASP.NET 1.x Applications in Visual Studio 2008 1574 Migrating from ASP.NET 2.0 to 3.5 1580 Appendix B: ASP.NET Ultimate Tools 1583 Debugging Made Easier 1583 Firebug 1584 YSlow 1585 IE WebDeveloper Toolbar and Firefox WebDeveloper 1586 Aptana Studio — Javascript IDE 1588 Profilers: dotTrace or ANTS 1589 References 1590 PositionIsEverything.net, QuirksMode.org, and HTMLDog.com 1590 Visibone 1590 www.asp.net 1590 Tidying Up Your Code 1591 Refactor! for ASP.NET from Devexpress 1591 Code Style Enforcer 1592 Packer for .NET — Javascript Minimizer 1593 Visual Studio Add-ins 1594 ASPX Edit Helper Add-In for Visual Studio 1595 Power Toys Pack Installer 1596 Extending ASP.NET 1597 ASP.NET AJAX Control Toolkit 1597 xxix Evjen ftoc.tex V2 - 01/28/2008 5:00pm Page xxx Contents Atif Aziz’s ELMAH — Error Logging Modules and Handlers 1598 Helicon’s ISAPI − Rewrite 1599 General Purpose Developer Tools 1600 Telerik’s Online Code Converter 1600 WinMerge and Differencing Tools 1601 Reflector 1602 CR − Documentor 1603 Process Explorer 1604 Summary 1605 Appendix C: Silverlight 1607 Extending ASP.NET Apps with Silverlight 1607 Step 1: A Basic ASP.NET Application 1609 Finding Vector-Based Content 1610 Converting Vector Content to XAML 1611 Tools for Viewing and Editing XAML 1614 Integrating with Your Existing ASP.NET Site 1620 Receiving Silverlight Events in JavaScript 1623 Accessing Silverlight Elements from JavaScript Events 1625 Summary 1626 Appendix D: ASP.NET Online Resources 1627 Author Blogs 1627 ASP.NET Influential Blogs 1627 Web Sites 1628 Index 1629 xxx Evjen flast.tex V2 - 01/28/2008 5:02pm Page xxxi Introduction Simply put, you will find that ASP.NET 3.5 is an amazing technology to use to build your Web solutions! When ASP.NET 1.0 was introduced in 2000, many considered it a revolutionary leap forward in the area of Web application development. ASP.NET 2.0 was just as exciting and revolutionary and ASP.NET 3.5 is continuing a forward march in providing the best framework today in building applications for the Web. Although the foundation of ASP.NET was laid with the release of ASP.NET 1.0, ASP.NET 3.5 continues to build on this foundation by focusing on the area of developer productivity. This book covers the whole of ASP.NET. It not only introduces new topics, it also shows you examples of these new technologies in action. So sit back, pull up that keyboard, and let’s have some fun! A Little Bit of Histor y Before organizations were even t hinking about developing applications for the Internet, much of the application development focused on thick desktop applications. These thick-client applications were used for everything from home computing and gaming to office productivity and more. No end was in sight for the popularity of this application model. During that time, Microsoft developers developed its thick-client applications using mainly Visual Basic (VB). Visual Basic was not only a programming language; it was tied to an IDE that allowed for easy thick-client application development. In the Visual Basic model, developers could drop controls onto a form, set properties for these controls, and provide code behind them to manipulate the events of the control. For example, when an end user clicked a button on one of the Visual Basic forms, the code behind the form handled the event. Then, in the mid-1990s, the Internet arrived on the scene. Microsoft was unable to move the Visual Basic model to the development of Internet-based applications. The Internet definitely had a lot of power, and right away, the problems facing the thick-client application model were revealed. Internet-based applications created a single instance of the application that everyone could access. Having one instance of an application meant that when the application was upgraded or patched, the changes made to this single instance were immediately available to each and every user visiting the application through a browser. To participate in the Web application world, Microsoft developed Active Server Pages (ASP). ASP was a quick and easy way to develop Web pages. ASP pages consisted of a single page that contained a mix of markup and languages. The power of ASP was that you could include VBScript or JScript code instructions in the page e xecuted on t he Web server before the page was sent to the end user’s Web browser. This was an easy way to create dynamic Web pages customized based on instructions dictated by the developer. ASP used script between brackets and percentage signs — < %% > — to control server-side behaviors. A developer could then build an ASP page b y starting with a set of static HTML. Any dynamic element Evjen flast.tex V2 - 01/28/2008 5:02pm Page xxxii Introduction needed by the page was defined using a scripting language (such as VBScript or JScript). When a user requested the page from the server by using a browser, the asp.dll (an ISAPI application that provided a bridge between the scripting language and the Web server) would take hold of the page and define all the dynamic aspects of the page on-the-fly based on the programming logic specified in the script. After all the dynamic aspects of the page were defined, the result was an HTML page output to the browser of the requesting client. As the Web application model developed, more a nd more languages mixed in with the static HTML to help manipulate the behavior and look of the output page. Over time, such a large number of languages, scripts, and plain text could be placed in a typical ASP page that developers began to refer to pages that utilized these features as spaghetti code. For example, it was quite possible to have a page that used HTML, VBScript, JavaScript, Cascading Style Sheets, T-SQL, and more. In certain instances, it became a manageability nightmare. ASP evolved and new versions were released. ASP 2.0 and 3.0 were popular because the technology made it relatively straightforward and easy to create Web pages. Their popularity was enhanced because they appeared in the late 1990s, just as the dotcom era w as born. During this time, a mountain of new Web pages and portals were developed, and ASP was one of the leading technologies individuals and com- panies used to build them. Even today, you can still find a lot of .asp pages on the Internet — including some of Microsoft’s own Web pages. However, even at the time of the final release of Active Server Pages in late 1998, Microsoft employees Marc Anders and Scott Guthrie had other ideas. Their ideas generated what they called XSP (an abbreviation with no meaning) — a new way of creating Web applications in an object-oriented manner instead of the procedural mannerof ASP 3.0. They showed their idea to many different groups within Microsoft, and they were well received. In the summerof 2000, thebeta of what was then called ASP+ was released at Microsoft’s Professional Developers Conference. The attendees eagerly started working with it. When t he technology became available (with the final release of the .NET Framework 1.0), it was renamed ASP.NET — receiving the .NET moniker that most o f Microsoft’s new products were receiving at that time. Before the introduction of .NET, the model that classic ASP provided and what developed in Visual Basic were so different that few VB developers also developed Web applications-and few Web applica- tion developers also developed the thick-client applications of the VB world. There was a great divide. ASP.NET bridged this gap. ASP.NET brought a Visual Basic–style eventing model to Web application development, providing much-needed state management techniques over stateless HTTP. Its model is much like the earlier Visual Basic model in that a developer can drag and drop a control onto a design surface or form, manipulate the control’s properties, and even work with the code behind these controls to act on certain events that occur during their lifecycles. What ASP.NET created is really the best of both models, as you will see throughout this book. I know you will enjoy working with this latest release of ASP.NET 3.5. Nothing is better than getting your hands on a new technology and seeing what is possible. The following section discusses the goals of ASP.NET so you can find out what to expect from this new offering! The Goals of ASP.NET ASP.NET 3.5 is another major release of the product and builds upon the core .NET Framework 2.0 with additional classes and capabilities. This release of the Framework was code-named Orcas internally at Microsoft. You might hear others referring to this release of ASP.NET as ASP.NET Orcas.ASP.NET3.5 continues on a path to make ASP.NET developers the most productive developers in the Web space. xxxii Evjen flast.tex V2 - 01/28/2008 5:02pm Page xxxiii Introduction Ever since the release of ASP.NET 2.0, the Microsoft team has had goals focused around developer productivity, administration, and management, as well as performance and scalability. Developer Productivity Much of the focus of ASP.NET 3.5 is on productivity. Huge productivity gains were made with the release of ASP.NET 1.x; could it be possible to expand further on those gains? One goal the development team had for ASP.NET was to eliminate much of the tedious coding that ASP.NET originally required and to make common ASP.NET tasks easier. The developer productivity capabilities are presented throughout this book. Before venturing into these capabilities, this introduction will first start by taking a look at the older ASP.NET 1.0 technology in order to make a comparison to ASP.NET 3.5. Listing I-1 provides an example of using ASP.NET 1.0 to build a table in a Web page that includes the capability to perform simple paging of the data provided. Listing I-1: Showing data in a DataGrid server control with paging enabled (VB o nly) <%@ Page Language="VB" AutoEventWireup="True" %> <%@ Import Namespace="System.Data" %> <%@ Import Namespace="System.Data.SqlClient" %> <script runat="server"> Private Sub Page_Load(ByVal sender As System.Object, _ ByVal e As System.EventArgs) If Not Page.IsPostBack Then BindData() End If End Sub Private Sub BindData() Dim conn As SqlConnection = New SqlConnection("server=’localhost’; trusted_connection=true; Database=’Northwind’") Dim cmd As SqlCommand = New SqlCommand("Select * From Customers", conn) conn.Open() Dim da As SqlDataAdapter = New SqlDataAdapter(cmd) Dim ds As New DataSet da.Fill(ds, "Customers") DataGrid1.DataSource = ds DataGrid1.DataBind() End Sub Private Sub DataGrid1_PageIndexChanged(ByVal source As Object, _ ByVal e As System.Web.UI.WebControls.DataGridPageChangedEventArgs) DataGrid1.CurrentPageIndex = e.NewPageIndex BindData() End Sub </script> <html> xxxiii . 157 1 ASP. NET 3. 5 Pages Come as XHTML 157 1 No Hard-Coded .js Files in ASP. NET 3. 5 15 73 Converting ASP. NET 1.x Applications in Visual Studio 2008 157 4 Migrating from ASP. NET 2.0 to 3. 5 158 0 Appendix. Enforcer 159 2 Packer for .NET — Javascript Minimizer 15 93 Visual Studio Add-ins 159 4 ASPX Edit Helper Add -In for Visual Studio 159 5 Power Toys Pack Installer 159 6 Extending ASP. NET 159 7 ASP. NET AJAX. Tab 151 2 Configuring ASP. NET in IIS on Vista 151 4 .NET Compilation 151 7 .NET Globalization 151 8 .NET Profile 151 8 .NET Roles 152 0 .NET Trust Levels 152 0 .NET Users 152 1 Application Settings 152 2 Connection

Ngày đăng: 05/07/2014, 18:20

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan