Bestselling


No Books Were Found.

New


C# 5.0 Programmer's Reference C# 5.0 Programmer's Reference
Ebook: $49.99

Unity 2D Game Development Unity 2D Game Development
Ebook: $14.99

Data Structures and Algorithms with JavaScript Data Structures and Algorithms with JavaScript
by Mike McMillan
Print: $34.99
Ebook: $27.99
Bundle: $38.49

Kompaktkurs C# 4.0 Kompaktkurs C# 4.0
Third Edition
Ebook: $22.99

Beginning ASP.NET 4.5.1: in C# and VB Beginning ASP.NET 4.5.1: in C# and VB
Ebook: $44.99

Upcoming


Concurrency in C# Cookbook Concurrency in C# Cookbook
by Stephen Cleary
Print: $39.99

More C# Books


LinqPad Webcast

Writing LINQ Queries with LINQPad

More Webcasts


C# Experts

Tony Northrup Tony Northrup , a Boston-area network security consultant and technology author, developed his interest in home automation after renting an apartment where every light was controlled by pulling a string. Tony's wife, Erica, ensures his home hacking projects are user-friendly and reliable, while his cat, Sammy, mangles every project within paw's reach.…

Matthew MacDonald Matthew MacDonald is a developer, author, and educator in all things Visual Basic and .NET. He's worked with Visual Basic and ASP since their initial versions, and written over a dozen books on the subject, including The Book of VB .NET (No Starch Press) and Visual Basic 2005: A Developer's Notebook (O'Reilly).…

John Sharp John Sharp is a principal technologist at Content Master, part of CM Group Ltd, a technical authoring and consulting company.

Marco Russo Marco Russo trains and consults with professional developers working with the .NET Framework and Microsoft SQL Server. He's active in developer communities and blogs, and has written three books.

Rob Miles Rob Miles has been teaching computer programming for more than 25 years. An expert on Visual C# and a Microsoft MVP for Device Application Development, Rob enjoys inspiring new and experienced programmers.

Rui Maximo Rui Maximo is a senior technical writer in the Office Communications Group, was lead program manager for Office Communications Server 2007, and contributed to a range of manageability, topology, VoIP, and Web access features.

Ade Miller Ade Miller works as a Development Lead with Microsoft's patterns & practices group, where he manages several agile teams who deliver applied engineering guidance to Microsoft's customers.

Calvin Janes Calvin Janes Calvin Janes is a consultant and expert in creating and using collection types.

More C# Experts

Learn C# Online

Certificate Series
.NET Programming Certificate — Beginning and intermediate programmers will get a solid foundation in .NET programming. The certificate series includes these three courses: Learn XML; Learn Object-Oriented Programming Using Java; and Learn C#. Enroll today!

More Courses


C# Answers

O'Reilly Answers: Clever Hacks. Creative Ideas. Innovative Solutions.

C# News & Commentary

Functions are values: explore C# lambda types in Visual Studio

By Andrew Stellman
April 9, 2011

I love that a college professor of mine from long ago, Bob Harper, is tackling the tricky issue of how to teach students about the nature of functions in his new Existential Type blog. His post got me thinking about how you'd go about teaching this concept to a learner—specifically, in my case, a C# learner. I've given it a bit of thought, and here's what I've come up with.

Understanding C#: Nullable Types

By Andrew Stellman
November 7, 2010

Every C# developer knows how to work with value types like int, double, boolean, char, and DateTime. They're really useful, but they have one flaw: they can't be set to null. Luckily, C# and .NET give you a very useful tool to for this: nullable types. You can use a nullable type any place that you need a variable that can either have a value or be null. This seems like a simple thing, but it turns out to be a highly flexible tool that can help make your programs more robust. In this tutorial, I'll show you the basics of nullable types, and give you a quick example of a program that uses them to handle unpredictable user input.

Understanding C#: Simple LINQ to XML examples (tutorial)

By Andrew Stellman
October 16, 2010

XML is one of the most popular formats for files and data streams that need to represent complex data. The .NET Framework gives you some really powerful tools for creating, loading, and saving XML files. And once you've got your hands on XML data, you can use LINQ to query anything from data that you created to an RSS feed. In this post, I'll show you two simple LINQ to XML tutorial style examples that highlight basic patterns that you can use to create or query XML data using LINQ to XML.

Understanding C#: Equality, IEquatable, and Equals()

By Andrew Stellman
September 29, 2010

What does it really mean for two objects to be equal? How can you tell if object #1 is equal to object #2? Do you compare all of their properties? What about private properties or fields? Is it possible for two objects to have exactly the same state, but to not be equal? It's more complex than it seems. In this post, I'll detangle some of those ideas, and show you how to use IEquatable, the Equals() and GetHashCode() methods, and overloading the == and =! operators so that you can compare objects in your own code.

Understanding C#: Raising events using a temporary variable

By Andrew Stellman
September 10, 2010

A lot of C# developers notice that there's something odd about how we normally raise events in C#. We're always told to set a temporary variable equal to the event first, and then raise the event using that variable. It looks very strange—how could that variable do anything at all? But it turns out that there's a very good reason for using the temporary variable, and understanding that reason can help you become a better C# developer. This post shows a quick example of why you need that variable.

Build HTML documentation for your C# code with Sandcastle in under 5 minutes

By Andrew Stellman
September 3, 2010

If you've ever used a library that has accurate MSDN-style API documentation, you know how useful it can be. There are lots of ways to create HTML documentation. But the easiest way that I've found is to use Sandcastle. It's an open source documentation generator from Microsoft that reads your assemblies (DLL or EXE files) and their XML Comments and automatically generates HTML documentation. Sandcastle is a very flexible tool, which means it's also a very complex tool. Luckily, there's a companion tool, Sandcastle Help File Builder, that makes it really easy to get up and running with Sandcastle in minutes.

More C# News & Commentary

Popular Topics

Browse Books & Videos

International Sites

O'Reilly China O'Reilly Germany O'Reilly Japan