WCF is the latest technology from Microsoft for building services. In this article by Mike Liu, we will explain what WCF is, and what it is composed of. We will also explain various .NET runtimes, .NET frameworks, Visual Studio versions, the relationships between them, and what is needed to develop or deploy WCF services. You will see some code snippets in this article that will help you to further understand WCF concepts, although they are not in a completed WCF project.
Let us discuss the following in detail:
- What WCF is
- Use of WCF for SOA
- WCF architecture
- Basic WCF concepts
The development environment of choice in this article by Stefan Björnander is the Visual Studio from Microsoft. In this article we also study the Microsoft Foundation Classes (MFC).
- Visual Studio provides us with a few Wizards—tools that help us generate code. The Application Wizard creates an application framework (a skeleton application) to which we add the specific logic and behavior of our application.
- When developing a Windows application, the Document/View model comes in handy. The application is divided into a document object that holds the data and performs the logic, and one or more views that take care of user input and display information on the screen.
- When an event occurs (the user clicks the mouse, the window is resized) a message is sent to the application, it is caught by a view object and is passed on to the document object. There are hundreds of messages in the Windows system. However, we only catch those that interest us.
- The device context can be viewed both as a canvas to paint on and as a toolbox holding pens and brushes.
- When we finish an application, we may want it to occur in the same state when we launch it the next time. This can be archived by storing vital values in the registry.
- Serialization is an elegant way of storing and loading values to and from a file. The framework takes care of naming, opening, and closing the file, all we have to do is to fill in the unique values of the application.
- The cursor has different appearances on different occasions. There are several predefined cursors we can use.
In order to simplify parallelism complexities and to avoid many concurrency pains, we must use the object-oriented capabilities offered by the C# programming language and design patterns. In this article, we will drastically simplify the creation of new parallelized code avoiding some advanced concurrent programming difficulties. Reading this article by Gastón C. Hillar and following the exercises we shall :
- Learn to combine single-threaded code with multithreaded code
- Use of object-oriented design patterns to simplify the creation of parallelized code
- Solve various problems to specialize in segmentation algorithms and achieve thread affinity
- Encapsulate multithreaded algorithms to create high-performance and safer independent pieces
- Learn to avoid problems with design instead of solving them using very difficult-to-apply algorithms
Linq to SQL is an object relational model that you can leverage in Visual Studio 2008. Your connection to SQL Server 2008 database is through a new control in Visual Studio 2008, the LinqDataSource control. This control needs a data context. The data context is provided by the Linq to SQL classes, a class generator that maps SQL server objects to the model. The class files generated support CRUD operations.
In this article by Dr. Jay Krishnaswamy, we will be adding a LinqDataSource control in Visual Studio 2008 to a ASP.NET website and configuring it by providing a data context. The data context will created using the Object Relational Designer(O/R Designer) in Visual Studio. The Linq data source is then bound to the Gridview in the Visual Studio designer.Read Displaying SQL Server Data using a Linq Data Source in full
The Analysis Services can also be configured when the SQL Server 2008 is installed. Out of the box the analysis server has no objects and you need to deploy a database to work with this service. Two previous articles described the process of creating a CUBE from scratch using the TestNorthwind database, a copy of the Northwind database. In this article by Dr. Jayaram Krishnaswamy, we will be authoring a report based on an analysis services CUBE.Read Creating a matrix report using the Analysis Services Cube in full
In this two-part article by Chris Webb, we will look at measures and measure groups, ways to control how measures aggregate up, and how dimensions can be related to measure groups. In this part, will cover useful properties of measures, along with built-in measure aggregation types and dimension calculations.Read Measures and Measure Groups in Microsoft Analysis Services: Part 1 in full
In order to solve problems that arise in concurrently running threads in applications, we need new debugging techniques suitable for the new parallelism environments that occur in Visual C#. In this article by Gastón C. Hillar, we will learn many tricks and debugging procedures that will help us find solutions to multithreaded application problems and have a better understanding of the execution of parallel threads. In this article we will be performing the following exercises:
- Find out how to freeze some threads to stop concurrency and simplify the process for debugging one thread at a time
- Learn to set and control breakpoints with multithreaded applications
- Discover how to inspect values when multiple threads are accessing the variables that hold them
- Develop multithreaded applications that show partial results to help us in the debugging process
In order to solve problems that arise in concurrently running threads in applications, we need new debugging techniques suitable for the new parallelism environments that occur in Visual C#. In this article by Gastón C. Hillar, we will learn many tricks and debugging procedures that will help us find solutions to multithreaded application problems and have a better understanding of the execution of parallel threads. We will be performing the following exercises:
- Learn some tricks to prepare multithreaded code to simplify the debugging and troubleshooting processes
- Become skilled at watching and understanding the execution of multiple concurrent threads
ADO.NET Data Services leverages the ADO.NET Entity Framework to build data services for relational data sources. These include support for MySQL, DB2, and Oracle in addition to MS SQL Server. It can also be used with non-relational data using an add-on provider model. With ADO.NET Data Services, the developers can build dynamic internet applications (AJAX, Silverlight, etc) that works across intranets as well as the internet. With this in place data access by applications is made possible using URI Syntax and using HTTP verbs operating on the data.
In this article by Dr. Jayaram Krishnaswamy, you will learn how to create a ADO.NET Data Service from scratch. You will also learn how you may access data using the URI constructs. The backend data for this tutorial comes from a copy of Northwind database named TestNorthwind on a named instance of SQL Server 2008. In order to work through this tutorial you should have Visual Studio 2008 SP1 installed. You also need to have .NET Framework 3.5 installed.Read Data Access with ADO.NET Data Services in full
Primarily, the Microsoft Office Outlook serves as an email application for a wide range of users. In the previous part of the article, we took an Overview of the Outlook object model and its features in VSTO. We saw the extensibility of Microsoft Office Outlook 2007 using the object model. We also learned to customize Microsoft Office Outlook menus and toolbars using VSTO. In the last part, we worked with form regions in Outlook, how to manipulate folders, contact information, and mail items using VSTO programming.
In this article by Vivek Thangaswamy, we will take a look at the following topics:
- Learning the concepts and seeing a demonstration of working with Outlook meetings and appointments
- Working with Ribbons for Outlook 2007
- Outlook applications and the Microsoft SQL Server 2008 database interaction