<?xml version="1.0" ?>
<?xml-stylesheet type="text/xsl" href="http://www.learnvisualstudio.net/rss.xsl" media="screen"?><rss version="2.0">
<channel>
	<title>LearnVisualStudio.NET Videos</title>
	<link>http://www.learnvisualstudio.net/</link>
	<language>en-us</language>
	<ttl>1440</ttl>
		<item>
			<guid>http://www.learnvisualstudio.net/content/videos/LINQtoSQL101_02_05_LINQ_to_SQL_Databinding_to_ASPDotNet.aspx</guid>
			<link>http://www.learnvisualstudio.net/content/videos/LINQtoSQL101_02_05_LINQ_to_SQL_Databinding_to_ASPDotNet.aspx</link>
			<title>LINQtoSQL101_02_05 - LINQ to SQL Databinding to ASP.NET</title>
			<description><![CDATA[In this video we'll show a practical use of LINQ to SQL in an ASP.NET application.  We'll simply databind a GridView and later a DropDownList to sequences of entities defined in our .dbml file.  And the key idea here is that you probably already know everything you need to know.  Since you're working with sequences of entities that implement IEnumerable, you can bind them to just about everything because the DataSource property on all databound controls needs classes that implement IEnumerable in order to work.]]></description>
			<pubDate>Mon, 17 Nov 2008 06:00:00 GMT</pubDate>
		</item>
		<item>
			<guid>http://www.learnvisualstudio.net/content/videos/LINQtoSQL101_02_04_LINQ_to_SQL_Stored_Procedures.aspx</guid>
			<link>http://www.learnvisualstudio.net/content/videos/LINQtoSQL101_02_04_LINQ_to_SQL_Stored_Procedures.aspx</link>
			<title>LINQtoSQL101_02_04 - LINQ to SQL Stored Procedures</title>
			<description><![CDATA[In this video we'll demonstrate how to work with Stored Procedures in LINQ, demonstrating how to add stored procs to the Entity Model, the .dbml file ... and how to reference it in code ... and we'll have two examples ... how to retrieve values returned by a stroed proc into an entity define in our .dbml file -- so if your stored procedure is returning all columns from the Product table, for example -- getting those results mapped into the Product entity and working with a sequence of Products ... and then secondly I'll show what happens when oyur stored proc is returning data that you can't map to a entity ... so, your stored proce is returning columns from multiple tables ... what do you do?  How does that work?  We'll show you how.]]></description>
			<pubDate>Mon, 17 Nov 2008 06:00:00 GMT</pubDate>
		</item>
		<item>
			<guid>http://www.learnvisualstudio.net/content/videos/LINQtoSQL101_02_03_LINQ_to_SQL_Delete_Syntax.aspx</guid>
			<link>http://www.learnvisualstudio.net/content/videos/LINQtoSQL101_02_03_LINQ_to_SQL_Delete_Syntax.aspx</link>
			<title>LINQtoSQL101_02_03 - LINQ to SQL Delete Syntax</title>
			<description><![CDATA[In this video we'll demonstrate how to delete one or more rows of data using LINQ to SQL, and we'll show how to delete an entity that has foreign key relationship.  Specifically we'll look at the DeleteOnSubmit and DeleteAllOnSubmit methods of the Data Context.]]></description>
			<pubDate>Mon, 03 Nov 2008 06:00:00 GMT</pubDate>
		</item>
		<item>
			<guid>http://www.learnvisualstudio.net/content/videos/LINQtoSQL101_02_02_LINQ_to_SQL_Insert_Syntax.aspx</guid>
			<link>http://www.learnvisualstudio.net/content/videos/LINQtoSQL101_02_02_LINQ_to_SQL_Insert_Syntax.aspx</link>
			<title>LINQtoSQL101_02_02 - LINQ to SQL Insert Syntax</title>
			<description><![CDATA[In this video I'll demonstrate how to insert a row into the database using LINQ to SQL, and will show how to insert multiple rows all together at the same time.  Specifically, we'll look at the InsertOnSubmit and InsertAllOnSubmit methods of the Data Context.]]></description>
			<pubDate>Mon, 03 Nov 2008 06:00:00 GMT</pubDate>
		</item>
		<item>
			<guid>http://www.learnvisualstudio.net/content/videos/LINQtoSQL101_01_04_Understanding_LINQ_to_SQL_Query_Execution.aspx</guid>
			<link>http://www.learnvisualstudio.net/content/videos/LINQtoSQL101_01_04_Understanding_LINQ_to_SQL_Query_Execution.aspx</link>
			<title>LINQtoSQL101_01_04 - Understanding LINQ to SQL Query Execution</title>
			<description><![CDATA[In the previous videos we said that LINQ will go to the database and grab the data it needs to satisfy the LINQ to SQL query syntax you write.  We also looked at some ways to watch the execution of the query ... like using that Debug Writer class and the SQL Profiler.  So, I want to use this video to learn more about when and how often the LINQ to SQL runtime actually sends the request to SQL Server.  So, we'll look at the default behavior of how and when LINQ to SQL retrieves data from the database, then we'll look at an option we can set in our Entity Model on our ORD to modify the loading behavior, namely the Delay Load property.  We'll also look at how LINQ to SQL retrieves a colection of related entities to a particular instance of an entity that we're working with.

]]></description>
			<pubDate>Mon, 27 Oct 2008 05:00:00 GMT</pubDate>
		</item>
		<item>
			<guid>http://www.learnvisualstudio.net/content/videos/LINQtoSQL101_02_01_LINQ_to_SQL_Update_Syntax.aspx</guid>
			<link>http://www.learnvisualstudio.net/content/videos/LINQtoSQL101_02_01_LINQ_to_SQL_Update_Syntax.aspx</link>
			<title>LINQtoSQL101_02_01 - LINQ to SQL Update Syntax</title>
			<description><![CDATA[In this video we'll demonstrate the syntax required to update data in a SQL Server table using LINQ to SQL and the SubmitChanges method.  It's pretty straight forward, but we'll also demonstrate how updating data across entity relationships is made easy as well.]]></description>
			<pubDate>Mon, 27 Oct 2008 05:00:00 GMT</pubDate>
		</item>
		<item>
			<category>VB</category>
			<category>C#</category>
			<category>Experienced</category>
			<category>2008</category>
			<category>LINQ</category>
			<guid>http://www.learnvisualstudio.net/content/videos/LINQtoSQL101_01_02_Understanding_the_Data_Context_and_the_Object_Relational_Designer.aspx</guid>
			<link>http://www.learnvisualstudio.net/content/videos/LINQtoSQL101_01_02_Understanding_the_Data_Context_and_the_Object_Relational_Designer.aspx</link>
			<title>LINQtoSQL101_01_02 - Understanding the Data Context and the Object Relational Designer</title>
			<description><![CDATA[In the previous video we demonstrated the entire workflow of using LINQ to SQL as the data access tier in your application.  In this video, we'll take a closer look at two of the main actors in LINQ to SQL, and that is the Object Relational Designer and the Data Context, providing access to the entity model generated by the ORD, as well as performing other crucial data tasks for us.  We also look at the code generated by the ORD in the .designer.cs file (or .designer.vb file), renaming entities and properties in the ORD and talk about the internals of the Data Context. ]]></description>
			<pubDate>Wed, 15 Oct 2008 05:00:00 GMT</pubDate>
		</item>
		<item>
			<guid>http://www.learnvisualstudio.net/content/videos/LINQtoSQL101_01_03_Debugging_and_Monitoring_LINQ_to_SQL_Queries.aspx</guid>
			<link>http://www.learnvisualstudio.net/content/videos/LINQtoSQL101_01_03_Debugging_and_Monitoring_LINQ_to_SQL_Queries.aspx</link>
			<title>LINQtoSQL101_01_03 - Debugging and Monitoring LINQ to SQL Queries</title>
			<description><![CDATA[In the previous video I briefly mentioned that LINQ to SQL queries get translated into commands that SQL Server understands.  Those commands are actual Transact SQL!  In this video we're going to sneak and watch the communication between the LINQ runtime and SQL Server by using several tools.  First we'll look at the tools built into VS 2008 SP1 for inspecting the results of a LINQ query, then we'll examine the LINQ to SQL Debug Visualizer, which is a tool you add-in to Visual Studio, and then we'll look at the LINQ to SQL Debug Writer, which is just a class that you add to your applications that outputs the generated T-SQL to the Debug window.  Finally, we'll pop open SQL Server Profiler to watch the traffic between LINQ to SQL and SQL Server.

]]></description>
			<pubDate>Wed, 15 Oct 2008 05:00:00 GMT</pubDate>
		</item>
		<item>
			<guid>http://www.learnvisualstudio.net/content/videos/VB301_08_01_XML_Literals.aspx</guid>
			<link>http://www.learnvisualstudio.net/content/videos/VB301_08_01_XML_Literals.aspx</link>
			<title>VB301_08_01 - XML Literals</title>
			<description><![CDATA[In this video we'll look at the final new feature of Visual Basic 2008 and that is XML Literals.  In the past, if you wanted to create
an XML snippet or document from code, you would have to use a rather cumbersome API to create documents, elements, attributes and so on.  In Visual Basic 9.0, now you can create XML structures in code without using strings or API's.  Substituting variables and even using to project a LINQ query using embedded code blocks, and finally XML axis properties and attributes.
]]></description>
			<pubDate>Tue, 02 Sep 2008 05:00:00 GMT</pubDate>
		</item>
		<item>
			<guid>http://www.learnvisualstudio.net/content/videos/LINQtoSQL101_01_01_Introduction_to_the_LINQ_to_SQL_Workflow.aspx</guid>
			<link>http://www.learnvisualstudio.net/content/videos/LINQtoSQL101_01_01_Introduction_to_the_LINQ_to_SQL_Workflow.aspx</link>
			<title>LINQtoSQL101_01_01 - Introduction to the LINQ to SQL Workflow</title>
			<description><![CDATA[In this video we'll kick off a new series about one of the popular variants of LINQ and that is LINQ to SQL, which takes the concepts of LINQ and extends them to working with collections of data from a SQL Server
database.  LINQ to SQL adds additional concepts, objects and methods for not only retrieving sets of data from a database, but also inserting, updating and deleting data.  We'll also look at how to work with stored
procedures, performance, working with ASP.NET and other similar considerations.

Before you watch this series you should familiarize yourself with LINQ to Object syntax in the C# 301 or VB 301 series on 
LearnVisualStudio.NET since we'll assume that you know basic LINQ syntax.  


Ok, so in this first video, I'll just assume that you know absolutely nothing about LINQ to SQL specifically, and I'll show you the basic
series of steps for retrieving data from a SQL Server database to be displayed in a console window.

The key to this video is that we're goin]]></description>
			<pubDate>Tue, 02 Sep 2008 05:00:00 GMT</pubDate>
		</item>
		<item>
			<guid>http://www.learnvisualstudio.net/content/videos/VB301_07_06_LINQ_Set_Operations.aspx</guid>
			<link>http://www.learnvisualstudio.net/content/videos/VB301_07_06_LINQ_Set_Operations.aspx</link>
			<title>VB301_07_06 - LINQ Set Operations</title>
			<description><![CDATA[In this video we'll look at set operations in LINQ, and by set operations we're talking about some extension methods that allow us to merge two sequences together or filter one set given another set.  We'll also look at the distinct keyword which works with a single sequence to filter out duplicates from a sequence.]]></description>
			<pubDate>Mon, 25 Aug 2008 05:00:00 GMT</pubDate>
		</item>
		<item>
			<guid>http://www.learnvisualstudio.net/content/videos/VB301_07_07_LINQ_Quantifiers.aspx</guid>
			<link>http://www.learnvisualstudio.net/content/videos/VB301_07_07_LINQ_Quantifiers.aspx</link>
			<title>VB301_07_07 - LINQ Quantifiers</title>
			<description><![CDATA[In this video we've included pretty much every other linq extension method ... and we'll feature methods that can help you determine whether there are any items in the sequence at all, or at least, any items that meet a certain criteria, other methods that perform basic operations on the seuqnce ... that is the sum, the min, the max, the average and so on, methods that find the first or last occurance of an item in the sequence that meets a certain criteria and so on.  We'll cover a lot, but honestly, there's no single method here that needs much in the way of detailed explanation ... I'm betting
that you've seen these sorts of operations before so it should be a fairly easy to digest video.]]></description>
			<pubDate>Mon, 25 Aug 2008 05:00:00 GMT</pubDate>
		</item>
		<item>
			<category>VB</category>
			<category>Language</category>
			<category>Experienced</category>
			<category>2008</category>
			<category>LINQ</category>
			<guid>http://www.learnvisualstudio.net/content/videos/VB301_07_04_LINQ_From_and_Join.aspx</guid>
			<link>http://www.learnvisualstudio.net/content/videos/VB301_07_04_LINQ_From_and_Join.aspx</link>
			<title>VB301_07_04 - LINQ From and Join</title>
			<description><![CDATA[In this video we'll look at the FROM and JOIN statements in LINQ.  We'll look at how to retrieve both flattened and hierarchical 
results, and how to create what we might basically consider both inner and outer joins if this were T-SQL.  We'll also look at
the method syntax to accomplish these tasks as well.]]></description>
			<pubDate>Thu, 21 Aug 2008 05:00:00 GMT</pubDate>
		</item>
		<item>
			<category>VB</category>
			<category>Language</category>
			<category>Experienced</category>
			<category>2008</category>
			<category>LINQ</category>
			<guid>http://www.learnvisualstudio.net/content/videos/VB301_07_05_LINQ_Ordering_and_Grouping.aspx</guid>
			<link>http://www.learnvisualstudio.net/content/videos/VB301_07_05_LINQ_Ordering_and_Grouping.aspx</link>
			<title>VB301_07_05 - LINQ Ordering and Grouping</title>
			<description><![CDATA[In this video, we'll look at basic ordering and grouping keywords and methods in LINQ.]]></description>
			<pubDate>Thu, 21 Aug 2008 05:00:00 GMT</pubDate>
		</item>
		<item>
			<category>VB</category>
			<category>Language</category>
			<category>Experienced</category>
			<category>2008</category>
			<category>LINQ</category>
			<guid>http://www.learnvisualstudio.net/content/videos/VB301_07_02_LINQ_Projection.aspx</guid>
			<link>http://www.learnvisualstudio.net/content/videos/VB301_07_02_LINQ_Projection.aspx</link>
			<title>VB301_07_02 - LINQ Projection</title>
			<description><![CDATA[In this video we'll start diving deeper into both the LINQ to Objects
method syntax as well as the language integrated query syntax
shortcuts.  We'll be talking about projection, and Projection 
(from a LINQ perspective) is basically shaping or molding the data 
that is returned from a LINQ query to include just the stuff you need 
(as opposed to retrieving every field of the object.)  You can use 
this to: 1) Convert the data from one type to another (i.e., 
copy the value from a property  in TypeA to a property in TypeB), or 
2) Flatten the data from a hierarchy into a non-hierarchical form.  
The new type could be something in in the framework, 
a type you created, or an anonymous type.]]></description>
			<pubDate>Mon, 11 Aug 2008 05:00:00 GMT</pubDate>
		</item>
		<item>
			<category>VB</category>
			<category>Language</category>
			<category>Experienced</category>
			<category>2008</category>
			<category>LINQ</category>
			<guid>http://www.learnvisualstudio.net/content/videos/VB301_07_03_LINQ_Where_Clause.aspx</guid>
			<link>http://www.learnvisualstudio.net/content/videos/VB301_07_03_LINQ_Where_Clause.aspx</link>
			<title>VB301_07_03 - LINQ Where Clause</title>
			<description><![CDATA[In this video we'll talk about the LINQ where clause,
which is a means of filtering a sequence to only 
include values that meet some criteria, usually called
a predicate.  We'll show how to create filtering conditions
for comparrisson, we'll demonstrate using multiple
where clauses using both the "and" operator and the 
"or" operator.]]></description>
			<pubDate>Mon, 11 Aug 2008 05:00:00 GMT</pubDate>
		</item>
		<item>
			<category>VB</category>
			<category>Language</category>
			<category>Experienced</category>
			<category>2008</category>
			<category>LINQ</category>
			<guid>http://www.learnvisualstudio.net/content/videos/VB301_06_01_Lambda_Expressions.aspx</guid>
			<link>http://www.learnvisualstudio.net/content/videos/VB301_06_01_Lambda_Expressions.aspx</link>
			<title>VB301_06_01 - Lambda Expressions</title>
			<description><![CDATA[In this video we talk about the last major topic before we plunge into LINQ and so we'll be talking about Lambda Expressions.  If you are planning on using LINQ a lot, then you'll definitely be writing a lot of lambda expressions.  What are they?  Lambda Expressions are basically shorthand for anonymous delegates.  For me, that statement  was a bit hard to swallow. What does that really mean?  So, in this video we'll start out with delegates, move to anonymous methods, then move to lambda expressions to show the progression of thought.  But basically, you can think of an anonymous delegate as a little chunk of code that you can pass around as an object.  Physically, it's a pointer to some function, but that sometimes is a bit nebulous.  Said antoher way, Lambdas are short expressions that evaluate to some value.  Let's stick with the idea of a little chunk of code that you can pass around.  And the idea here is that you can stick this little block of code right into the parameter of a ]]></description>
			<pubDate>Wed, 06 Aug 2008 05:00:00 GMT</pubDate>
		</item>
		<item>
			<category>VB</category>
			<category>Language</category>
			<category>Experienced</category>
			<category>2008</category>
			<category>LINQ</category>
			<guid>http://www.learnvisualstudio.net/content/videos/VB301_07_01_Introduction_to_LINQ_to_Objects.aspx</guid>
			<link>http://www.learnvisualstudio.net/content/videos/VB301_07_01_Introduction_to_LINQ_to_Objects.aspx</link>
			<title>VB301_07_01 - Introduction to LINQ to Objects</title>
			<description><![CDATA[In this video we'll look at LINQ, specifically the most generic form of LINQ called LINQ to Objects. We'll cover the typical introductory material such as the why's and whatfor's, the different strains of LINQ in the wild, we'll look at the difference between the language integrated syntax versus the method syntax and then we'll spend the majority of our time look at small examples of LINQ in action. ]]></description>
			<pubDate>Wed, 06 Aug 2008 05:00:00 GMT</pubDate>
		</item>
		<item>
			<category>VB</category>
			<category>Language</category>
			<category>Experienced</category>
			<category>2008</category>
			<guid>http://www.learnvisualstudio.net/content/videos/VB301_03_01_Object_Initializers.aspx</guid>
			<link>http://www.learnvisualstudio.net/content/videos/VB301_03_01_Object_Initializers.aspx</link>
			<title>VB301_03_01 - Object Initializers</title>
			<description><![CDATA[In this next video in our VB 9 series we'll look at Object Initializers.  These work similiarly to an initialized array, where we're able to set all or some of the properties of a newly created object in just one line of code.  In some ways it's similar to a constructor that populates the properties of a newly instance of an object.  However, unlike a constructor, you can pick and choose which properties to populate in any combination.]]></description>
			<pubDate>Mon, 14 Jul 2008 05:00:00 GMT</pubDate>
		</item>
		<item>
			<category>VB</category>
			<category>Language</category>
			<category>Experienced</category>
			<category>2008</category>
			<guid>http://www.learnvisualstudio.net/content/videos/VB301_04_01_Anonymous_Types.aspx</guid>
			<link>http://www.learnvisualstudio.net/content/videos/VB301_04_01_Anonymous_Types.aspx</link>
			<title>VB301_04_01 - Anonymous Types</title>
			<description><![CDATA[In this video we'll look at another language enhancement in VB 9 and that is Anonymous Types.  You might be familiar with anonymous methods in C# 2.0 which allowed you to create a function without a name ... to basically define the body of the function inline to another method call.  Anonymous types are similiar ... you can think of them as "on the fly classes" ... or as you see here, un-named classes ... and the key to this is that the compiler "infers" or figures out what the type definition looks like based on the object initializer.  You might wonder why in the world you would need such a thing, but they are used extensively when working with 
LINQ, so we want to get our heads around them before we start looking at linq examples.]]></description>
			<pubDate>Mon, 14 Jul 2008 05:00:00 GMT</pubDate>
		</item>
		<item>
			<category>VB</category>
			<category>Language</category>
			<category>Experienced</category>
			<category>2008</category>
			<guid>http://www.learnvisualstudio.net/content/videos/VB301_05_01_Extension_Methods.aspx</guid>
			<link>http://www.learnvisualstudio.net/content/videos/VB301_05_01_Extension_Methods.aspx</link>
			<title>VB301_05_01 - Extension Methods</title>
			<description><![CDATA[In this video we'll talk about extension methods which are simply methods -- usually helper methods that can be bolted on to the side of existing types / classes ... even if that type is sealed, meaning that it cannot be inherited from.  In the past you may have had some helper methods that are intended for operation on certain types ... like a formatting method for example.  This is similar in concept, but the implementation is cleaner and more elegant.  The reason why Extension MEthods are important is because this is how LINQ's methods, like Select, Where, Sum, Count, are bolted on to the side of types that implement the IEnumerable<T> interface, as well as others.  So, Extension Methods are what makes LINQ's method syntax work.]]></description>
			<pubDate>Mon, 14 Jul 2008 05:00:00 GMT</pubDate>
		</item>
		<item>
			<guid>http://www.learnvisualstudio.net/content/videos/CS301_07_07_LINQ_Quantifiers.aspx</guid>
			<link>http://www.learnvisualstudio.net/content/videos/CS301_07_07_LINQ_Quantifiers.aspx</link>
			<title>CS301_07_07 - LINQ Quantifiers</title>
			<description><![CDATA[In this video we've included pretty much every other linq extension method ... featuring methods that can help you determine whether there are any items in the sequence at all, or at least, any items that meet a certain criteria, other methods that perform basic operations on the seuqnce ... that is the sum, the min, the max, the average and so on, methods that find the first or last occurance
of an item in the sequence that meets a certain criteria and so on.  We'll cover: Any(), All(), Contains(), Count(), Sum(), Min(),
Max(), Average(), First(), FirstOrDefault(), Last(), LastOrDefault(), Single(), SingleOrDefault() and Aggregate().]]></description>
			<pubDate>Mon, 07 Jul 2008 05:00:00 GMT</pubDate>
		</item>
		<item>
			<category>VB</category>
			<category>Language</category>
			<category>Experienced</category>
			<category>2008</category>
			<guid>http://www.learnvisualstudio.net/content/videos/VB301_01_01_Nullable_Data_Types.aspx</guid>
			<link>http://www.learnvisualstudio.net/content/videos/VB301_01_01_Nullable_Data_Types.aspx</link>
			<title>VB301_01_01 - Nullable Data Types</title>
			<description><![CDATA[Nullable data types allow you to create data types like integers and initialize them to nothing.  This becomes important in the LINQ story because you will occasionally have a database table design that allows for a numeric field to be nullable, and prior to Visual Basic 9.0 you would have to turn a null value from your database into a zero value in your application.  To avoid this mismatch in LINQ to SQL this new feature was added.]]></description>
			<pubDate>Mon, 07 Jul 2008 05:00:00 GMT</pubDate>
		</item>
		<item>
			<category>VB</category>
			<category>Language</category>
			<category>Experienced</category>
			<category>2008</category>
			<guid>http://www.learnvisualstudio.net/content/videos/VB301_02_01_Local_Type_Inference.aspx</guid>
			<link>http://www.learnvisualstudio.net/content/videos/VB301_02_01_Local_Type_Inference.aspx</link>
			<title>VB301_02_01 - Local Type Inference</title>
			<description><![CDATA[In this video we'll talk about local type inference, also known as implicitly typed local variables.  This introduces an easy way to create a variable without having to know the type ... but allowing the initializer to dictate the data type.  When we work with LINQ, many times it may not be very clear what a given linq query is returning, and so local type inference allows us to say "we don't really care what it is, let VB figure it out."  Microsoft suggests that you use this technique when working with LINQ to make development easier.  Some authors I've read insist that you should use it as a temporary measure until you can figure out the exact return type ... one technique would be to set a break point and use the debugging tools to figure out what the actual type is.  Whichever you decide is up to you, but the one  thing to keep in mind is that this technique only works for the local scope.  You can't return or reference a variable created with this technique outside of the scope of]]></description>
			<pubDate>Mon, 07 Jul 2008 05:00:00 GMT</pubDate>
		</item>
		<item>
			<category>C#</category>
			<category>2008</category>
			<category>LINQ</category>
			<guid>http://www.learnvisualstudio.net/content/videos/CS301_07_05_LINQ_Ordering_and_Grouping.aspx</guid>
			<link>http://www.learnvisualstudio.net/content/videos/CS301_07_05_LINQ_Ordering_and_Grouping.aspx</link>
			<title>CS301_07_05 - LINQ Ordering and Grouping</title>
			<description><![CDATA[In this video, we'll look at basic ordering and grouping keywords and methods in LINQ.  We'll cover the following C# keywords: orderby, descending, group by ... as well as the following extension methods: OrderBy(), ThenBy(), OrderByDescending(), ThenByDescending() and GroupBy().]]></description>
			<pubDate>Mon, 30 Jun 2008 05:00:00 GMT</pubDate>
		</item>
		<item>
			<category>C#</category>
			<category>2008</category>
			<category>LINQ</category>
			<guid>http://www.learnvisualstudio.net/content/videos/CS301_07_06_LINQ_Set_Operations.aspx</guid>
			<link>http://www.learnvisualstudio.net/content/videos/CS301_07_06_LINQ_Set_Operations.aspx</link>
			<title>CS301_07_06 - LINQ Set Operations</title>
			<description><![CDATA[In this video we'll look at set operations in LINQ, and by set operations we're talking about some extension methods that allow us to merge two sequences together or filter one set given another set.  We'll also look at the distinct keyword which works with a single sequence to filter out duplicates from a sequence.  We'll cover: Concat(), Union(),
Intersect(), Except() and Distinct().
]]></description>
			<pubDate>Mon, 30 Jun 2008 05:00:00 GMT</pubDate>
		</item>
		<item>
			<category>C#</category>
			<category>2008</category>
			<category>LINQ</category>
			<guid>http://www.learnvisualstudio.net/content/videos/CS301_07_04_LINQ_From_and_Join.aspx</guid>
			<link>http://www.learnvisualstudio.net/content/videos/CS301_07_04_LINQ_From_and_Join.aspx</link>
			<title>CS301_07_04 - LINQ From and Join</title>
			<description><![CDATA[In this video we'll look at the FROM and JOIN statements in LINQ.  We'll look at how to retrieve both flattened and hierarchical 
results, and how to create what we might basically consider both inner and outer joins if this were T-SQL.  We'll over the following
C# keywords: join - on - equals and into ... and we'll cover the following extension methods: SelectMany(), Join() and GroupJoin().]]></description>
			<pubDate>Sun, 29 Jun 2008 05:00:00 GMT</pubDate>
		</item>
		<item>
			<category>C#</category>
			<category>2008</category>
			<category>LINQ</category>
			<guid>http://www.learnvisualstudio.net/content/videos/CS301_07_01_Introduction_to_LINQ_to_Objects.aspx</guid>
			<link>http://www.learnvisualstudio.net/content/videos/CS301_07_01_Introduction_to_LINQ_to_Objects.aspx</link>
			<title>CS301_07_01 - Introduction to LINQ to Objects</title>
			<description><![CDATA[In this video we'll look at LINQ, specifically the most generic form of LINQ called LINQ to Objects.  We'll cover the typical introductory material such as the why's and whatfor's, the different strains of LINQ in the wild, we'll look at the difference between the language integrated syntax versus the method syntax and then we'll spend the majority of our time look at small examples of LINQ in action.]]></description>
			<pubDate>Thu, 26 Jun 2008 05:00:00 GMT</pubDate>
		</item>
		<item>
			<category>C#</category>
			<category>2008</category>
			<category>LINQ</category>
			<guid>http://www.learnvisualstudio.net/content/videos/CS301_07_02_LINQ_Projection.aspx</guid>
			<link>http://www.learnvisualstudio.net/content/videos/CS301_07_02_LINQ_Projection.aspx</link>
			<title>CS301_07_02 - LINQ Projection</title>
			<description><![CDATA[In this video we'll start diving deeper into both the LINQ to Objects method syntax as well as the language integrated query syntax shortcuts.  We'll be talking about projection, and Projection (from a LINQ perspective) is basically shaping or molding the data that is returned from a LINQ query to include just the stuff you need (as opposed to retrieving every field of the object.)  You can use this to: 1) Convert the data from one type to another (i.e., copy the value from a property  in Type A to a property in Type B), 2) Flatten the data from a hierarchy into a non-hierarchical form.  The new type could be something in in the framework, a type you created, or an anonymous type.  We'll start with simply selecting an entire sequence from a collection.  Then we'll start selecting single fields or new instances of a named type, and finally select data into anonymous types.]]></description>
			<pubDate>Thu, 26 Jun 2008 05:00:00 GMT</pubDate>
		</item>
		<item>
			<category>C#</category>
			<category>2008</category>
			<category>LINQ</category>
			<guid>http://www.learnvisualstudio.net/content/videos/CS301_07_03_LINQ_Where_Clause.aspx</guid>
			<link>http://www.learnvisualstudio.net/content/videos/CS301_07_03_LINQ_Where_Clause.aspx</link>
			<title>CS301_07_03 - LINQ Where Clause</title>
			<description><![CDATA[In this video we'll talk about the LINQ where clause, which is a means of filtering a sequence to only include values that meet some criteria, usually called a predicate.  We'll show how to create filtering conditions for comparrisson, we'll demonstrate using multiple where clauses using both the "and" operator and the "or" operator.]]></description>
			<pubDate>Thu, 26 Jun 2008 05:00:00 GMT</pubDate>
		</item>
		<item>
			<guid>http://www.learnvisualstudio.net/content/videos/CS301_04_01_Anonymous_Types.aspx</guid>
			<link>http://www.learnvisualstudio.net/content/videos/CS301_04_01_Anonymous_Types.aspx</link>
			<title>CS301_04_01 - Anonymous Types</title>
			<description><![CDATA[In this video we'll look at another language enhancement in C# 3.0 and that is Anonymous Types.  You might be familiar with anonymous methods in C# 2.0 which allowed you to create a function without a name ... to basically define the body of the function inline to another method call.  Anonymous types are similiar ... you can think of them as "on the fly classes" ... or "un-named classes" ... and the key to this is that the compiler "infers" or figures out what the type definition looks like based on the object initializer. ]]></description>
			<pubDate>Mon, 23 Jun 2008 05:00:00 GMT</pubDate>
		</item>
		<item>
			<guid>http://www.learnvisualstudio.net/content/videos/CS301_05_01_Extension_Methods.aspx</guid>
			<link>http://www.learnvisualstudio.net/content/videos/CS301_05_01_Extension_Methods.aspx</link>
			<title>CS301_05_01 - Extension Methods</title>
			<description><![CDATA[In this video we'll talk about extension methods which are simply methods -- usually helper methods that can be bolted on to the side of existing types / classes ... even if that type is sealed, meaning that it cannot be inherited from.  In the past you may have had some helper methods that are intended for operation on certain types ... like a formatting method for example.  This is similar in concept, but the implementation is cleaner and more elegant.  The reason why Extension MEthods are important is because this is how LINQ's methods, like Select, Where, Sum, Count, are bolted on to the side of types that implement the
IEnumerable<T> interface, as well as others.  So, Extension Methods are what makes LINQ's method syntax work.]]></description>
			<pubDate>Mon, 23 Jun 2008 05:00:00 GMT</pubDate>
		</item>
		<item>
			<guid>http://www.learnvisualstudio.net/content/videos/CS301_06_01_Lambda_Expressions.aspx</guid>
			<link>http://www.learnvisualstudio.net/content/videos/CS301_06_01_Lambda_Expressions.aspx</link>
			<title>CS301_06_01 - Lambda Expressions</title>
			<description><![CDATA[In this video we talk about the last major topic before we plunge into LINQ and so we'll be talking about Lambda Expressions.  If you are planning on using LINQ a lot, then you'll definitely be writing a lot of lambda expressions.  What are they?  Lambda Expressions are basically shorthand for anonymous delegates.
For me, that statement  was a bit hard to swallow. What does that
really mean?  So, in this video we'll start out with delegates, move to anonymous methods, then move to lambda expressions to show the progression of thought.  But basically, you can think of an anonymous delegate as a little chunk of code that you can pass around as an object.  Physically, it's a pointer to some function, but that sometimes is a bit nebulous.  Said antoher way, Lambdas are short expressions that evaluate to some value.  Let's stick with the idea of a little chunk of code that you can pass around.  And the idea here is that you can stick this little block of code right into the parameter of a]]></description>
			<pubDate>Mon, 23 Jun 2008 05:00:00 GMT</pubDate>
		</item>
		<item>
			<category>C#</category>
			<category>Language</category>
			<category>2008</category>
			<guid>http://www.learnvisualstudio.net/content/videos/CS301_01_01_Auto_Implemented_Properties.aspx</guid>
			<link>http://www.learnvisualstudio.net/content/videos/CS301_01_01_Auto_Implemented_Properties.aspx</link>
			<title>CS301_01_01 - Auto Implemented Properties</title>
			<description><![CDATA[Auto Implemented Properties provide a short-cut to creating the verbose getter and setter methods, as well as the accompanying private fields used when creating classes.  Also discussed are the prop and propg code snippets to even further reduce the amount of typing required to create a class' properties.]]></description>
			<pubDate>Mon, 16 Jun 2008 05:00:00 GMT</pubDate>
		</item>
		<item>
			<category>C#</category>
			<category>Language</category>
			<category>2008</category>
			<guid>http://www.learnvisualstudio.net/content/videos/CS301_02_01_Local_Type_Inference_(var_keyword).aspx</guid>
			<link>http://www.learnvisualstudio.net/content/videos/CS301_02_01_Local_Type_Inference_(var_keyword).aspx</link>
			<title>CS301_02_01 - Local Type Inference (var keyword)</title>
			<description><![CDATA[In this video we'll talk about local type inference, also known as implicitly
typed local variables.  This introduces the var keyword to C# 3.0, and it is
used basically as an easy way to create a variable without having to know
the type.  When we work with LINQ, many times it may not be very clear what
a given linq query is returning, and so the var keyword allows us to say 
"we don't really care what it is, let C# figure it out."  Now, Microsoft
suggests that you use the var keyword to make development easier.  Some 
authors I've read insist that you should use it as a temporary measure until
you can figure out the exact return type ... one technique would be to set
a break point and use the debugging tools to figure out what the actual type 
is.  Whichever you decide is up to you, but the one thing to keep in mind
is that the var keyword only works for the local scope.  You can't return or
reference a variable created with var outside of the scope of a local method.]]></description>
			<pubDate>Mon, 16 Jun 2008 05:00:00 GMT</pubDate>
		</item>
		<item>
			<category>C#</category>
			<category>Language</category>
			<category>2008</category>
			<guid>http://www.learnvisualstudio.net/content/videos/CS301_03_01_Object_and_Collection_Initializers.aspx</guid>
			<link>http://www.learnvisualstudio.net/content/videos/CS301_03_01_Object_and_Collection_Initializers.aspx</link>
			<title>CS301_03_01 - Object and Collection Initializers</title>
			<description><![CDATA[In this next video in our C# 3.0 series we'll look at Object and Collection
Initializers.  These work similiarly to an initialized array, 
where we're able to set the properties of a newly created object or 
multiple instances of new objects in a new collection in essentially 
one line of code.  Let's start with object initializers ... In some
ways it's similar to a constructor that populates the properties of a newly
instance of an object.  However, unline a constructor, you can pick and
choose which properties to populate in any combination.]]></description>
			<pubDate>Mon, 16 Jun 2008 05:00:00 GMT</pubDate>
		</item>
		<item>
			<guid>http://www.learnvisualstudio.net/content/videos/ASPDotNet_AJAX_101_Lesson_8_Video_2_Creating_a_Custom_AJAX_Extender_Part_2.aspx</guid>
			<link>http://www.learnvisualstudio.net/content/videos/ASPDotNet_AJAX_101_Lesson_8_Video_2_Creating_a_Custom_AJAX_Extender_Part_2.aspx</link>
			<title>ASP.NET AJAX 101 - Lesson 8 - Video 2 - Creating a Custom AJAX Extender - Part 2</title>
			<description><![CDATA[This video continues the discussion on how to create a custom ajax extender control. It focuses on the client side code and how client side class is structure for use with an extender control.]]></description>
			<pubDate>Mon, 07 Apr 2008 05:00:00 GMT</pubDate>
		</item>
		<item>
			<guid>http://www.learnvisualstudio.net/content/videos/ASPDotNet_AJAX_101_Lesson_8_Video_3_Exploring_the_Use_of_Client_Side_Classes.aspx</guid>
			<link>http://www.learnvisualstudio.net/content/videos/ASPDotNet_AJAX_101_Lesson_8_Video_3_Exploring_the_Use_of_Client_Side_Classes.aspx</link>
			<title>ASP.NET AJAX 101 - Lesson 8 - Video 3 - Exploring the Use of Client Side Classes</title>
			<description><![CDATA[This video explores how to use client side classes without a server side 
implemenation of an extender.]]></description>
			<pubDate>Mon, 07 Apr 2008 05:00:00 GMT</pubDate>
		</item>
		<item>
			<category>VB</category>
			<category>C#</category>
			<category>ASP.NET</category>
			<category>AJAX</category>
			<category>2008</category>
			<guid>http://www.learnvisualstudio.net/content/videos/ASPDotNet_AJAX_101_Lesson_8_Video_4_Creating_a_Custom_AJAX_Control.aspx</guid>
			<link>http://www.learnvisualstudio.net/content/videos/ASPDotNet_AJAX_101_Lesson_8_Video_4_Creating_a_Custom_AJAX_Control.aspx</link>
			<title>ASP.NET AJAX 101 - Lesson 8 - Video 4 - Creating a Custom AJAX Control</title>
			<description><![CDATA[This video builds upon our previous video which focused on creating client side classes and  takes that class and discuss the modifcations made to it for use in a server side control. In the process of doing so, we touch on the similarities to an extender control.]]></description>
			<pubDate>Mon, 07 Apr 2008 05:00:00 GMT</pubDate>
		</item>
		<item>
			<category>VB</category>
			<category>C#</category>
			<category>ASP.NET</category>
			<category>AJAX</category>
			<category>2008</category>
			<guid>http://www.learnvisualstudio.net/content/videos/ASPDotNet_AJAX_101_Lesson_8_Video_5_Extending_an_AJAX_Control.aspx</guid>
			<link>http://www.learnvisualstudio.net/content/videos/ASPDotNet_AJAX_101_Lesson_8_Video_5_Extending_an_AJAX_Control.aspx</link>
			<title>ASP.NET AJAX 101 - Lesson 8 - Video 5 - Extending an AJAX Control</title>
			<description><![CDATA[This video discusses how to take an existing AJAX control and add extra functionality to it with a specific focus on the details of adding your own scripts to an existing control. ]]></description>
			<pubDate>Mon, 07 Apr 2008 05:00:00 GMT</pubDate>
		</item>
		<item>
			<category>VB</category>
			<category>C#</category>
			<category>ASP.NET</category>
			<category>AJAX</category>
			<category>2008</category>
			<guid>http://www.learnvisualstudio.net/content/videos/MSAJAX101_07_02_Lesson_07_Video_02_Using_the_Profile_Service.aspx</guid>
			<link>http://www.learnvisualstudio.net/content/videos/MSAJAX101_07_02_Lesson_07_Video_02_Using_the_Profile_Service.aspx</link>
			<title>ASP.NET AJAX 101 - Lesson 7 - Video 2 - Using the Profile Service</title>
			<description><![CDATA[This video discusses how to use the built Ajax Profile service in the ASP.NET 
AJAX Framework. More specifically, it covers the loading and saving of profile information via client side script.]]></description>
			<pubDate>Thu, 27 Mar 2008 05:00:00 GMT</pubDate>
		</item>
		<item>
			<category>VB</category>
			<category>C#</category>
			<category>ASP.NET</category>
			<category>AJAX</category>
			<category>2008</category>
			<guid>http://www.learnvisualstudio.net/content/videos/MSAJAX101_07_03_Lesson_07_Video_03_Using_the_Roles_Service.aspx</guid>
			<link>http://www.learnvisualstudio.net/content/videos/MSAJAX101_07_03_Lesson_07_Video_03_Using_the_Roles_Service.aspx</link>
			<title>ASP.NET AJAX 101 - Lesson 7 - Video 3 - Using the Roles Service</title>
			<description><![CDATA[This video discusses how to configure your application to use the built-in 
ASP.NET AJAX Roles Service, how to handle the client-side calls to the Roles Service and  
wraps it all up with a brief look into what you need to do to make a custom Roles Service.]]></description>
			<pubDate>Thu, 27 Mar 2008 05:00:00 GMT</pubDate>
		</item>
		<item>
			<category>VB</category>
			<category>C#</category>
			<category>ASP.NET</category>
			<category>AJAX</category>
			<category>2008</category>
			<guid>http://www.learnvisualstudio.net/content/videos/MSAJAX101_08_01_Lesson_08_Video_01_Creating_a_Custom_AJAX_Extender_Part_1.aspx</guid>
			<link>http://www.learnvisualstudio.net/content/videos/MSAJAX101_08_01_Lesson_08_Video_01_Creating_a_Custom_AJAX_Extender_Part_1.aspx</link>
			<title>ASP.NET AJAX 101 - Lesson 8 - Video 1 - Creating a Custom AJAX Extender - Part 1</title>
			<description><![CDATA[This video discusses how to build a basic custom AJAX Extender control. 
In particular, it covers several in depth items such as how client side objects are 
initialized from the server , and some of the intricacies of creating the assembly so that the scripts are referenced properly from the script resources.]]></description>
			<pubDate>Thu, 27 Mar 2008 05:00:00 GMT</pubDate>
		</item>
		<item>
			<category>VB</category>
			<category>C#</category>
			<category>ASP.NET</category>
			<category>AJAX</category>
			<category>2008</category>
			<guid>http://www.learnvisualstudio.net/content/videos/ASPDotNet_AJAX_101_Lesson_6_Video_2_Using_the_Timer_Control.aspx</guid>
			<link>http://www.learnvisualstudio.net/content/videos/ASPDotNet_AJAX_101_Lesson_6_Video_2_Using_the_Timer_Control.aspx</link>
			<title>ASP.NET AJAX 101 - Lesson 6 - Video 2 - Using the Timer Control</title>
			<description><![CDATA[This video discusses the ASP.NET AJAX Timer control and how to use it with the 
Update Panel control. It also discusses some of the basics of the Timer control as well as an interesting issue that Jim ran across while working extensively with ASP.NET AJAX.]]></description>
			<pubDate>Tue, 18 Mar 2008 05:00:00 GMT</pubDate>
		</item>
		<item>
			<category>VB</category>
			<category>C#</category>
			<category>ASP.NET</category>
			<category>AJAX</category>
			<category>2008</category>
			<guid>http://www.learnvisualstudio.net/content/videos/ASPDotNet_AJAX_101_Lesson_7_Video_1_Using_the_Authentication_Service.aspx</guid>
			<link>http://www.learnvisualstudio.net/content/videos/ASPDotNet_AJAX_101_Lesson_7_Video_1_Using_the_Authentication_Service.aspx</link>
			<title>ASP.NET AJAX 101 - Lesson 7 - Video 1 - Using the Authentication Service</title>
			<description><![CDATA[This video discusses how to use the built-in AJAX Authentication Service in the 
ASP.NET AJAX Framework as well as how to configure and use a custom authentication service. We'll go over the requirements of the custom authentication service and how to handle authentication, login and logout events in client side code. ]]></description>
			<pubDate>Tue, 18 Mar 2008 05:00:00 GMT</pubDate>
		</item>
		<item>
			<category>VB</category>
			<category>C#</category>
			<category>ASP.NET</category>
			<category>AJAX</category>
			<category>2008</category>
			<guid>http://www.learnvisualstudio.net/content/videos/ASPDotNet_AJAX_101_Lesson_5_Video_2_Handling_Errors_with_Client_Script.aspx</guid>
			<link>http://www.learnvisualstudio.net/content/videos/ASPDotNet_AJAX_101_Lesson_5_Video_2_Handling_Errors_with_Client_Script.aspx</link>
			<title>ASP.NET AJAX 101 - Lesson 5 - Video 2 - Handling Errors with Client Script</title>
			<description><![CDATA[This video picks up from the previous video in this lesson and discusses how to handle AsyncPostBack errors using client-side script.]]></description>
			<pubDate>Wed, 27 Feb 2008 06:00:00 GMT</pubDate>
		</item>
		<item>
			<category>VB</category>
			<category>C#</category>
			<category>ASP.NET</category>
			<category>AJAX</category>
			<category>2008</category>
			<guid>http://www.learnvisualstudio.net/content/videos/ASPDotNet_AJAX_101_Lesson_6_Video_1_Using_the_UpdateProgress_Control.aspx</guid>
			<link>http://www.learnvisualstudio.net/content/videos/ASPDotNet_AJAX_101_Lesson_6_Video_1_Using_the_UpdateProgress_Control.aspx</link>
			<title>ASP.NET AJAX 101 - Lesson 6 - Video 1 - Using the UpdateProgress Control</title>
			<description><![CDATA[This video discussed how to use the Update Progress Control on your pages in conjunction with the update panel control as well as how to adjust it's layout and use with multiple update panel controls. ]]></description>
			<pubDate>Wed, 27 Feb 2008 06:00:00 GMT</pubDate>
		</item>
		<item>
			<category>VB</category>
			<category>C#</category>
			<category>ASP.NET</category>
			<category>AJAX</category>
			<category>2008</category>
			<guid>http://www.learnvisualstudio.net/content/videos/ASPDotNet_AJAX_101_Lesson_4_Video_5_Aborting_UpdatePanel_Requests.aspx</guid>
			<link>http://www.learnvisualstudio.net/content/videos/ASPDotNet_AJAX_101_Lesson_4_Video_5_Aborting_UpdatePanel_Requests.aspx</link>
			<title>ASP.NET AJAX 101 - Lesson 4 - Video 5 - Aborting UpdatePanel Requests</title>
			<description><![CDATA[This video demonstrates how to abort PostBacks generated by the UpdatePanel.  It briefly talks about the PageRequestManager and its role in the framework.  This video also discusses the drawback to cancelling requests on the client.]]></description>
			<pubDate>Wed, 20 Feb 2008 06:00:00 GMT</pubDate>
		</item>
		<item>
			<category>VB</category>
			<category>C#</category>
			<category>ASP.NET</category>
			<category>AJAX</category>
			<guid>http://www.learnvisualstudio.net/content/videos/ASPDotNet_AJAX_101_Lesson_4_Video_6_Registering_DataItems.aspx</guid>
			<link>http://www.learnvisualstudio.net/content/videos/ASPDotNet_AJAX_101_Lesson_4_Video_6_Registering_DataItems.aspx</link>
			<title>ASP.NET AJAX 101 - Lesson 4 - Video 6 - Registering DataItems</title>
			<description><![CDATA[This video discusses what DataItems are, when to use them, how to register them for use in your application and how to use the DataContractJsonSerializer object to serialize an object graph to a client side JSON object.  As an added bonus, this video will also will examine the DataItemReg custom class to demonstrate an OOP way of allowing you to register a variety of object types.]]></description>
			<pubDate>Wed, 20 Feb 2008 06:00:00 GMT</pubDate>
		</item>
		<item>
			<category>VB</category>
			<category>C#</category>
			<category>ASP.NET</category>
			<category>AJAX</category>
			<category>2008</category>
			<guid>http://www.learnvisualstudio.net/content/videos/ASPDotNet_AJAX_101_Lesson_5_Video_1_Error_Handling_with_the_ScriptManager.aspx</guid>
			<link>http://www.learnvisualstudio.net/content/videos/ASPDotNet_AJAX_101_Lesson_5_Video_1_Error_Handling_with_the_ScriptManager.aspx</link>
			<title>ASP.NET AJAX 101 - Lesson 5 - Video 1 - Error Handling with the ScriptManager</title>
			<description><![CDATA[This video talks about how to handle errors in your ASP.NET 
Ajax enabled website by using simple configurations in your scriptmanager and web.config. It also discusses how to apply redirection to an specified page when an error occurrs.]]></description>
			<pubDate>Wed, 20 Feb 2008 06:00:00 GMT</pubDate>
		</item>
	<pubDate>Mon, 17 Nov 2008 06:00:00 GMT</pubDate>
	<lastBuildDate>Mon, 17 Nov 2008 06:00:00 GMT</lastBuildDate>
</channel>
</rss>