Language Integrated Query (LINQ) introduces fundamental changes to the techniques .NET developers will use to access data. LINQ brings general-purpose query facilities to the .NET framework and allows a developer to query data inside of in-memory objects, data inside of relational databases, and data inside of XML using a uniform API and syntax.
Scott has over 15 years of experience in commercial software
development and is a frequent speaker at national conferences,
and local user groups. Scott is a Microsoft MVP and has authored
books on several Microsoft technologies, including ASP.NET, C#,
and Windows Workflow.
LINQ to XML Hi, this is Scott Allen of Pluralsight and in this module, I'm going to cover LINQ to XML. In this module, we're going to look at using the new XML API. We're going to talk about why there's a new API, and we're not going to look at just querying, we're going to look at actually loading, creating and updating XML with this new API but we will also draw into querying XML and see how we can use LINQ to XML instead of some of the older technologies like XPath and XSLT.
LINQ to SQL Part I Hi. This is Scott Allen of Pluralsight. In this module we're going to talk about, LINQ to SQL. LINQ to SQL is a technology that will allow you to query SQL Server, and thus it is-- falls under the category of being an Object-relational Mapper. So, we'll talk about ORMs a little bit and the problem that they set out to solve which is the data Impedance Mismatch. So we'll look at how to map entities. That is, how do I map objects to tables in a database? How do I manage object associations and memory when there might be a foreign key in the database that exists between those two entities? And we'll talk about using LINQ to SQL to perform queries, how to do projects, how to use compelled queries to gain a little bit about performance edge, and how do you store procedures with LINQ to SQL.
LINQ to SQL Part II Hi, this is Scott Allen of Pluralsight and this module is LINQ to SQL Part Two. In the first module with LINQ to SQL, we looked at querying relational data using LNQ to SQL in the DataContext. In this module, we're going to dig in to the DataContext and look at Modifying Data and understanding how the DataContext behaves at runtime. This includes many behaviors that may not be obvious at first but we're going to talk about how the DataContext maintains the identity of data that comes back from the database and we'll talk about objects and memory versus rows in the database. We're going to talk about the lifecycle of an entity that is something that's been retrieved from the database and how that ties in with a design pattern known as the Unit of Work. We'll talk about change tracking which is how the DataContext knows what properties on which objects have changed and what it needs to send back to the database in the form of update commands. We'll also talk about managing associations between related objects, attaching and detaching objects from a SQL DataContext and also about Concurrency Management, so what happens when the objects that I've updated and are sending back to the database have already been updated by somebody else.
The ADO.NET Entity Framework Part I Hi, this is Scott Allen of Pluralsight, and this module covers the ADO. NET Entity Framework. This is the first of two modules on the Entity Framework which is a tool you can use to build a data model over top of a relational database and treat that database as a persistent store for objects. In this module, we're going to be looking at some background information on the Entity Framework to understand its goals and the problems it's trying to solve. We'll look at how to build models and provide mapping and metadata information to the Entity Frameworks that it can transform objects to relational data and vice versa. We'll look at querying with the entity framework using Entity SQL, but we'll primarily focus on using LINQ to Entities and LINQ expressions to query the Entity Framework. We'll look at some of the services the Entity Framework provides, such as change tracking. And we'll do a quick comparison of LINQ to Entities versus LINQ to SQL.
The ADO.NET Entity Framework Part 2 Hi, this is Scott Allen of Pluralsight, and this module is the second of two modules covering the Entity Framework. In this module, we're going to dwell into the ObjectContext of the Entity Framework. Now, we're going to see how the context implements two common design patterns. The first pattern is the identity map patterns which help the context manage object identities. And the second design pattern is the unit of work design pattern which is supposedly related to the entity lifecycle and how the Entity Framework persist changes to the database. So we'll see the impact that these design pattern implementations have on the behavior of the software we rate against the framework. We'll also be looking at how change tracking is managed with the Entity Framework and how to manage relationships between entities. We'll also be looking at how we can detach on entity from its original ObjectContext and reattach it to a different context at a later point in time. And we'll also be covering concurrency management and how we can use the Entity Framework to implement optimistic concurrency checks.
ADO.NET Data Services Hi this is Scott Allen of Pluralsight and this module is going to discuss ADO. NET Data Services. In this module, we're going to use a little bit of LINQ and a little bit of HTTP to push data around over the web. Specifically, we're going to be looking at the types of problems you can solve with ADO. NET Data Services and why it exists. We'll also be talking about Representational State Transfer or REST which is an alternative to SOAP for building web services. Then we'll build and configure an ADO. NET Data Services on a server as well as write a couple different types of clients that can actually use that data service to not only query for data but also to insert update and delete data on the server. We'll round up the discussion with the look at Query Interceptors which was something that you can add to a data service to provide some additional processing on incoming requests. And we'll also look at Service Operations which are almost like the traditional web methods that we're used to except there's still invoked in RESTful manner.