-
Threads, Asynchrony, Parallelism, and Concurrency in C#
Last updated: Thursday, October 24, 2024
Published in: CODE Magazine: 2024 - November/December
Joydip walks you through fundamental computing concepts that enhance application performance and scalability. The article provides a comprehensive exploration of threads, tasks, and multiprocessing, illustrating how they relate to asynchrony, parallelism, and concurrency. Through detailed explanations and code examples, Kanjilal demonstrates how these concepts can be implemented in C# using Visual Studio 2022 and .NET 9.0. Emphasizing best practices, Joydip guides developers in avoiding common pitfalls like deadlocks and race conditions, while highlighting when to use each approach based on application needs.
-
Implementing the Outbox Pattern with Kafka and C#
Last updated: Thursday, October 24, 2024
Published in: CODE Magazine: 2024 - September/October
Joydip delves into the outbox pattern as a reliable method for ensuring data consistency and reliable event publishing in microservices architectures. He provides a comprehensive guide on implementing this pattern using Apache Kafka and C# within ASP.NET Core applications, covering key components, benefits, and drawbacks. The article includes a detailed walkthrough of setting up Kafka, creating database tables, and developing both producer and consumer services. Additionally, Joydip discusses real-world use cases and alternatives to the outbox pattern, such as Two-Phase Commit and Saga Pattern, to give readers a holistic view of the pattern's practical applications and limitations.
-
C# for High-Performance Systems
Last updated: Wednesday, August 28, 2024
Published in: CODE Magazine: 2024 - March/April
Oren Eini, creator of RavenDB, discusses and demonstrates how to use C# for building high-performance systems. Oren proves through examples that a high-level language like C# is suitable for low-level system programming. His examples compare the performance and memory consumption of different methods, including LINQ, a StreamReader + Dictionary approach, and the use of System.IO.Pipelines.
-
Adding Scripting to Existing Code Using Reflection
Last updated: Thursday, December 14, 2023
Published in: CODE Magazine: 2023 - May/Jun
Dan and Vassili demonstrate how to use C# reflection from a scripting language to let you take well-known and debugged parts of C# code and get more functionality and control. For example, with scripting, you can use technology in new ways that go beyond what the basic user interface allows. The main example takes C# code from a complex service and create CSCS (Customized Scripting in C#) code that looks very similar to the C# code, so that the scripting language now has access to a very complicated existing DLL.
-
Writing Code to Generate Code in C#
Last updated: Thursday, December 14, 2023
Published in: CODE Magazine: 2023 - May/Jun
Jason tells you how to use C# 9 "source generators" that generate new code during the compilation process, allowing developers to eliminate repetitive tasks and improve application performance.
-
Webinar Bonus Article: Improving String Performance in .NET 7
Last updated: Monday, November 14, 2022
Published in: CODE Magazine: 2022 - November/December
This bonus article accompanies Joydip's CODE Presents webinar of the same name, presented November 16, 2022. To watch the webinar recording, visit https://www.codemag.com/CodePresents.
-
What’s New in C# 11
Last updated: Monday, October 24, 2022
Published in: CODE Focus Magazine: 2022 - Vol. 19 - Issue 1 - .NET 7.0
If you’re interested in improving productivity, object initialization and creation, generic math support, and runtime performance, you’re going to be pretty interested in what Bill has to say about C#’s latest release.
-
Customized Object-Oriented and Client-Server Scripting in C#
Last updated: Wednesday, August 31, 2022
Published in: CODE Magazine: 2022 - September/October
You need full control of how your functionality is implemented. Vassili tells you how to use classes and objects for great control, and how to implement them in C# in this article about object-oriented and client-server scripting.
-
Writing High-Performance Code Using Span<T> and Memory<T> in C#
Last updated: Wednesday, August 31, 2022
Published in: CODE Magazine: 2022 - July/August
C# 7.2 has introduced two new types: Span and Memory. If you need to work with large chunks of memory in a high performance manner, these new types provide a faster way to work with arrays and subarrays, strings and subscrings, and unmanaged memory buffers. Joydip dives in and finds that they’re incredibly useful.
-
Minimal APIs in .NET 6
Last updated: Wednesday, August 31, 2022
Published in: CODE Magazine: 2022 - January/February
Controller-based APIs have been around for a long time, but .NET 6 changes everything with a new option. Shawn shows you how it works.
-
Essential C# 10.0: Making it Simpler
Last updated: Wednesday, August 31, 2022
Published in: CODE Focus Magazine: 2021 - Vol. 18 - Issue 1 - .NET 6.0
It’s time for the annual release of C# vNext. Mark shows you how it’s streamlined in some ways and tightened in others. In fact, he thinks it will mark a sea change in how C# devs write code.
-
Building Command Line Utilities in C# and Python
Last updated: Wednesday, August 31, 2022
Published in: CODE Magazine: 2021 - July/August
Rod whips up a quick app to help a friend and ends up discovering some pretty cool multi-platform features that are part of command line utilities.
-
Using Scripting for Working with SQL Server in C#
Last updated: Wednesday, August 31, 2022
Published in: CODE Magazine: 2021 - May/June
Vassili demonstrates how to use scripting in C# projects with SQL Server; learn advantages to write less code. Works well for macOS setup.
-
Introducing C# 9.0
Last updated: Thursday, December 10, 2020
Published in: CODE Focus Magazine: 2020 - Vol. 17 - Issue 1 - .NET 5.0
The C# compiler that ships with the .NET 5 SDK has been updated and streamlined; but C# 9.0 is supported only on .NET 5.0. Read this overview of the best C# 9.0 feaures to support native cloud applications, modern software engineering practices, and more concise readable code.
-
Prototyping with Microsoft Maquette: A New Virtual Reality Tool
Last updated: Wednesday, August 31, 2022
Published in: CODE Magazine: 2020 - September/October
An overview of Microsoft Marquette, a spatial prototyping tool aimed to help designers or developers to mock-up virtual reality (VR) and augmented reality (AR) experiences very fast, before actually building them.
-
Discovering AWS for .NET Developers
Last updated: Wednesday, August 31, 2022
Published in: CODE Magazine: 2020 - May/June
Learn a bit about how Amazon Web Services (AWS) supports .NET platforms including hosting ASP.NET Core apps.
-
Use the MVVM Design Pattern in MVC Core: Part 1
Last updated: Wednesday, August 31, 2022
Published in: CODE Magazine: 2020 - May/June
Learn to use the Model-View-View-Model (MVVM) design pattern, long used in WPF applications, in MVC Core applications. Using MVVM in MVC makes your applications even more reusable, testable, and maintainable.
-
A WPF Security System
Last updated: Wednesday, August 31, 2022
Published in: CODE Magazine: 2020 - March/April
Discover a data-driven approach to make changes to a database table without updating security in your WPF application.
-
CSLA .NET: A Home for Your Business Logic
Last updated: Wednesday, August 31, 2022
Published in: CODE Magazine: 2020 - March/April
Rocky Lhotka describes CSLA .NET, the MIT-licensed open-source framework to organize your business logic, similar in concept to separating the presentation and data layers of an application. Learn to use CSLA in a simple Blazor app.
-
Introduction to GraphQL for .NET Developers: Mutation
Last updated: Wednesday, August 31, 2022
Published in: CODE Magazine: 2020 - March/April
Peter uses the Hot Chocolate Library to teach you about GraphQL. Learn how to use the Entity Framework to access and store data and explore mutations using GraphQL.
-
A New Era of Productivity with Blazor
Last updated: Wednesday, August 31, 2022
Published in: CODE Focus Magazine: 2019 - Vol. 16 - Issue 1 - .NET Core 3.0
Blazor is a new Web framework that uses .NET Core’s architecture, essentially combining the simplicity of Razor with .NET Core concepts. Ed shows you how to get the most from this great tool.
-
Essential C# 8.0
Last updated: Wednesday, September 23, 2020
Published in: CODE Focus Magazine: 2019 - Vol. 16 - Issue 1 - .NET Core 3.0
When .NET Core got its makeover, so did C#. Mark shows you what’s improved and why you’ll want to work with it right away.
-
gRPC as a Replacement for WCF
Last updated: Wednesday, September 23, 2020
Published in: CODE Focus Magazine: 2019 - Vol. 16 - Issue 1 - .NET Core 3.0
You’ve been programming in C# for a while now, and you know that you need bidirectional streaming with low latency and high throughput. Google’s remote procedure call offering (gRPC) has what you need, and Magnus shows you why.
-
Upgrading Windows Desktop Applications with .NET Core 3
Last updated: Tuesday, September 22, 2020
Published in: CODE Focus Magazine: 2019 - Vol. 16 - Issue 1 - .NET Core 3.0
It’s not enough that creating apps using .NET Core is better than ever before. Now, Olia shows us how with .NET Core 3, upgrading existing apps is easier, too.
-
Emotional Code
Last updated: Tuesday, March 16, 2021
Published in: CODE Magazine: 2019 - November/December
Whether you know it or not, your code says something about you. Kate tells you how to read emotions in existing code and how to be a better member of the coding community when writing your own.
-
Get Started with Serverless Azure Functions
Last updated: Tuesday, March 16, 2021
Published in: CODE Magazine: 2019 - November/December
Azure Functions take care of most of the server-related problems tied to hosting. Julie shows you how to integrate them with your own app and then monitor the results.
-
Responsible Package Management in Visual Studio
Last updated: Thursday, November 30, 2023
Published in: CODE Magazine: 2019 - September/October
If you use a package management tool, like NuGet, Node Package Manager (NPM) for JavaScript, or Maven for Java, you already know how they simplify and automate library consumption. John shows you how to make sure that the packages you download don’t cause more troubles than they solve.
-
A Design Pattern for Building WPF Business Applications: Part 2
Last updated: Monday, March 29, 2021
Published in: CODE Magazine: 2019 - July/August
In the second installment of his new series, Paul explores sending a message from a View Model class to the main window, setting up a timer, and creating a log in screen.
-
Using PowerShell Operators
Last updated: Monday, March 29, 2021
Published in: CODE Magazine: 2019 - July/August
You need PowerShell operators if you’re writing a script or module, and there are quite a variety to choose from. Dan takes us on a tour of some of the ones you’ll use the most.
-
A Design Pattern for Building WPF Business Applications: Part 1
Last updated: Wednesday, March 31, 2021
Published in: CODE Magazine: 2019 - May/June
Paul begins a new series of articles on how to create a WPF business application. This first one teaches how to use a message broker to eliminate strong coupling between classes, how to display status and information to the user while resources are loading, and how to load user controls onto a single window while aggregating controls and building a large screen.
-
Immutability in C#
Last updated: Thursday, April 1, 2021
Published in: CODE Magazine: 2019 - May/June
If your application uses multi-threading, immutability should be part of it. John covers how to enforce and work with immutable objects, despite C#’s lack of native support for them.
-
Create a Title Bar for User Controls
Last updated: Friday, April 2, 2021
Published in: CODE Magazine: 2019 - March/April
Those helpful buttons for minimize, maximize, and close functions need to be added to your WPF pages if you don’t want to crowd your user’s screen. Paul shows you how.
-
Using Custom Scripting and Modding in Unity Game and App Development
Last updated: Tuesday, April 6, 2021
Published in: CODE Magazine: 2019 - March/April
Vassili shows how to use CSCS scripting in Unity to perform functions not originally in games or apps. You can add your own quests, items, and other game elements or alter scripts, textures, and meshes. Go forth and conquer!
-
Yes, User Prompts and Unit Tests Can Co-Exist
Last updated: Friday, April 2, 2021
Published in: CODE Magazine: 2019 - March/April
If you thought that pages and dialogs that need a response from a user couldn’t be unit tested, John will show you how it’s done using dependency inversion.
-
Building a .NET IDE with JetBrains Rider
Last updated: Friday, April 16, 2021
Published in: CODE Magazine: 2018 - November/December
If you’ve been developing IDEs in .NET, you’ve probably heard about JetBrains’ Rider. Chris and Maarten show you that the time is right to dive in.
-
Marking up the Web with ASP.NET Core and Markdown
Last updated: Friday, April 15, 2022
Published in: CODE Magazine: 2018 - November/December
You’re probably already using Markdown for HTML text entry and formatting your README.md files. But Markdown is good for so much more—Rick shows you parsing, stable content in a website, embedding converted HTML into a Razor output, and more.
-
Security in Angular: Part 3
Last updated: Monday, April 12, 2021
Published in: CODE Magazine: 2018 - November/December
In this third installment of his Angular security series, Paul addresses the Angular 6 release and shows you how to build an array of claims without single properties for security.
-
Writing Your Own Debugger and Language Extensions with Visual Studio Code
Last updated: Wednesday, April 21, 2021
Published in: CODE Magazine: 2018 - September/October
Visual Studio Code is the hot new thing these days. Vassili tells you how to take advantage of some of its features, including CSCS, Rich Language Services, REPL language interpretation, and debugging.
-
Introducing .NET Core 2.1 Flagship Types
Last updated: Wednesday, August 31, 2022
Published in: CODE Magazine: 2018 - July/August
If you’re looking to improve your app’s performance, you’re probably already cross-platform and open source, and you already know that .NET Core is a great tool for that goal. Ahson lets us in on what’s new in .NET Core 2.1 with a focus on Span<T> and Memory<T>.
-
Identify Faces with Microsoft Cognitive Services
Last updated: Friday, April 23, 2021
Published in: CODE Magazine: 2018 - May/June
When it’s time to wire your house to precipitate your every whim or need, you want to be sure that your robot doesn’t mistake “catsup” for “catnip.” Sahil talks about facial recognition and how it’s connected to speech and understanding.
-
Prepare Visual Basic for Conversion to C#
Last updated: Friday, April 8, 2022
Published in: CODE Magazine: 2018 - May/June
There’s nothing wrong with coding in VB, but to stay contemporary, you need to get coding in C#. Paul shows you how to convert legacy VB files to C# without re-inventing the wheel.
-
Understanding Blockchain: A Beginners Guide to Ethereum Smart Contract Programming
Last updated: Monday, April 26, 2021
Published in: CODE Magazine: 2018 - May/June
If you need your data secure, there’s probably no better way to ensure it than a Blockchain. Wei-Meng explains how it all works and then helps you build your own.
-
Eliminate HTML Tables for Better Mobile Web Apps
Last updated: Tuesday, April 27, 2021
Published in: CODE Magazine: 2018 - March/April
At this point, you’re clear that your app has to work on all platforms, especially on smartphones. Paul gets tables to adjust their sizes based on which platform is being used to view it.
-
SharePoint Framework Extension
Last updated: Thursday, May 6, 2021
Published in: CODE Magazine: 2018 - January/February
Sahil teaches you how to organize and automate your work using one of the new features in SharePoint: Extensions.
-
Developing Cross-Platform Native Apps with a Functional Scripting Language
Last updated: Tuesday, May 11, 2021
Published in: CODE Magazine: 2017 - November/December
Vassili extends his own custom scripting language for mobile development and makes creating and placing widgets fast and easy.
-
Accessing Platform-Specific Functionalities Using DependencyService in Xamarin.Forms
Last updated: Tuesday, May 18, 2021
Published in: CODE Magazine: 2017 - July/August
You can avoid all that pesky overhead when dealing with multiple platforms by using Microsoft’s library of APIs, Xamarin.Forms. Wei-Meng shows you how to efficiently map to the various platforms’ respective native UI elements at run time.
-
Office 365 Connectors and WebHooks: Part 2
Last updated: Friday, May 14, 2021
Published in: CODE Magazine: 2017 - July/August
Just when it seems like Office 365 is everywhere, you’ll learn something that makes you glad it’s so ubiquitous. Sahil continues his new series with an interesting look at Office 365’s WebHooks.
-
Office 365 Connectors and WebHooks: Part 1
Last updated: Wednesday, May 19, 2021
Published in: CODE Magazine: 2017 - May/June
Just when it seems like Office 365 is everywhere, you’ll learn something that makes you glad it’s so ubiquitous. Sahil begins a new series with an interesting look at Office 365’s WebHooks.
-
What’s New in C# 7.0
Last updated: Thursday, May 20, 2021
Published in: CODE Magazine: 2017 - May/June
Just when you think you know what’s up in C#, they release a new version. This one’s got pattern matching, tuples, and local functions along with improvements to existing features. Chris shows you where to dive in.
-
What’s New in Visual Studio 2017
Last updated: Wednesday, May 19, 2021
Published in: CODE Magazine: 2017 - May/June
It’s so new that the dust is still settling, and VS2017 was worth the wait. Markus explores the ins and outs of his favorite new features.
-
Programming Alexa Skills for the Amazon Echo
Last updated: Tuesday, May 25, 2021
Published in: CODE Magazine: 2017 - March/April
If you’re looking for a way to computerize your home or add voice controls to your apps, you’re interested in what’s happening with Amazon Echo. Chris introduces you to some basic programming skills for the device and points the way to greatness.
-
Processing Large Datasets Using C# and SQL Server Table Data Types
Last updated: Friday, May 28, 2021
Published in: CODE Magazine: 2017 - January/February
If you’ve got large datasets, you don’t want to slow the system down every time you save them to your SQL Server database. Rod shows you an uncomplicated way to keep your records zipping along.
-
Simplest Thing Possible: Dynamic Lambda Expressions—Part 3
Last updated: Wednesday, June 2, 2021
Published in: CODE Magazine: 2016 - November/December
If you want to re-use some of the concepts John introduced in the last two issues, you’ll want to learn all about Dynamic Lambda Expressions work in .NET.
-
The Resurgence of XAML
Last updated: Wednesday, June 2, 2021
Published in: CODE Magazine: 2016 - November/December
Microsoft seemed to have put XAML out to pasture for a while, but Billy shows us how it’s back, and why even Microsoft is touting its praises.
-
Simplest Thing Possible: Leveraging and Querying String, Object Dictionaries (Lambda Expressions - Part 2)
Last updated: Monday, June 7, 2021
Published in: CODE Magazine: 2016 - September/October
John explores the flexibility of dynamic queries and multiple data types within the same dictionary. You’ll be amazed at how simple it really is!
-
What’s New in CODE Framework in 2016
Last updated: Thursday, June 10, 2021
Published in: CODE Magazine: 2016 - September/October, Addison Wesley Books: Smart Client Deployment with ClickOnce
If you’d like a neat summary of the many interesting and useful changes in CODE Magazine’s free development framework, you’ve come to the right place. Markus talks about themes, input validation, security, and binding, Web API service hosting, calling REST services, and interacting with the community and GitHub.
-
How to Write Your Own Programming Language in C#
Last updated: Monday, June 14, 2021
Published in: CODE Magazine: 2016 - July/August
Have you ever thought that the language you were coding in lacked some important tools? Vassili shows you how to write your own language without building a compiler.
-
Introduction to IoT Using the Raspberry Pi
Last updated: Wednesday, August 31, 2022
Published in: CODE Magazine: 2016 - July/August
Special tools are necessary to make the switch from clunky desktops to fluid mobile apps, and if you want to give your mobile device (or your clients’) access to the Internet of Things (IoT), you need to know about them. Wei-Meng and Clarence have done the hard part of researching it, and they recommend Raspberry Pi.
-
Simplest Thing Possible: Dynamic Lambda Expressions
Last updated: Friday, June 11, 2021
Published in: CODE Magazine: 2016 - July/August
Lambda expressions have been around for a while, but they seem poorly understood and generally underused. You can juice up your code with these dynamic types from .NET, according to John. Find out how!
-
More about Xamarin Pages
Last updated: Thursday, July 1, 2021
Published in: CODE Magazine: 2015 - September/October
Walt continues his series of articles on Xamarin, this time, exploring the nature of pages. You’ll learn what a page is, how to navigate among them, how to create sub-pages, and strategies for loading data onto pages.
-
Using Apache Hadoop on the Windows Platform
Last updated: Wednesday, July 7, 2021
Published in: CODE Magazine: 2015 - September/October
If you’ve ever wondered what the difference is between MapReduce and Hadoop, Gary will tell you, putting it all in context of Hadoop and .NET.
-
XAML Anti-Patterns: Layout SNAFUs
Last updated: Tuesday, July 6, 2021
Published in: CODE Magazine: 2015 - September/October, Markus Egger Talks Tech
Just when you think a container is simple, your user resizes the screen and mayhem ensues. If you want to know what happened—or prevent it, better yet—read Markus’ piece about the XAML layout engine.
-
Display a Progress Message on an MVC Page
Last updated: Monday, July 12, 2021
Published in: CODE Magazine: 2015 - July/August
Have you ever watched someone impatiently click again and again on a button? Paul explains how that can slow the server down and how to prevent the delay. He also looks at glyphs that tell users that their device got the message and is working on it.
-
Xamarin Pages: The Screens of an App
Last updated: Tuesday, July 13, 2021
Published in: CODE Magazine: 2015 - July/August
In the next article of his series on Xamarin, Walt takes a look at the all-important UI and how to make it work best for the development process and the user.
-
Z-Wave Powered Build Status Lights
Last updated: Monday, July 12, 2021
Published in: CODE Magazine: 2015 - July/August
Everyone’s familiar with the status lights that movie-makers think indicate that a computer (or bank of computers) is thinking. Eric tells us how to use real status lights to indicate failure and success—and progress—of your apps using Z-Wave.
-
Asynchronous Pattern Redux for XAML Developers
Last updated: Monday, July 26, 2021
Published in: CODE Magazine: 2015 - May/June
By providing the history of asynchronous and await patterns, Bill examines the benefits of using these techniques in developing new apps and when it comes to the maintenance or revision of legacy code.
-
Exploring the Xamarin.Forms Ecosystem
Last updated: Wednesday, July 14, 2021
Published in: CODE Magazine: 2015 - May/June
As part of his series, Walt dives deeply into Xamarin.Forms and roots around in the details of the object model.
-
XAML Anti-Patterns: Code-Behind
Last updated: Tuesday, July 27, 2021
Published in: CODE Magazine: 2015 - May/June, Markus Egger Talks Tech
Markus continues his series on anti-patterns with an interesting look at when to take advantage of certain techniques and when to give them a wide berth.
-
A First Look at ASP.NET vNext
Last updated: Wednesday, August 31, 2022
Published in: CODE Magazine: 2015 - January/February
In this article, Rick plays with the beta version of ASP.NET vNext. You’ll get to see what’s (probably) coming so you can start making plans.
-
Mobile Apps for SharePoint and Office 365: Part 2
Last updated: Thursday, July 29, 2021
Published in: CODE Magazine: 2015 - January/February
Sahil continues his interesting series by writing a fronted to the Mobile app he wrote the backend for in the November/December 2014 issue.
-
Mobile Apps for SharePoint and Office 365: Part 1
Last updated: Monday, August 2, 2021
Published in: CODE Magazine: 2014 - November/December
In this first installment of his new series, Sahil begins writing an end-to-end mobile infrastructure using some familiar tools.
-
XNA is Dead; Long Live the New XNA, MonoGame
Last updated: Wednesday, August 31, 2022
Published in: CODE Magazine: 2014 - November/December
If you haven’t explored the open source implementation of XNA 4.x API called MonoGame, now’s your chance to see what exciting things are in store for you. Chris takes us there.
-
Taking the Mystery Out of Cryptocurrencies
Last updated: Friday, September 3, 2021
Published in: CODE Magazine: 2014 - September/October
Bitcoin has been in the news a lot lately. If you ever wondered how it worked, you’ll want to read what Chris has to say.
-
Xamarin 3.0: Better Cross-Platform Mobile Development with C#
Last updated: Friday, September 3, 2021
Published in: CODE Magazine: 2014 - September/October
Xamarin has a new version of their Cross-Platform Mobile Development tool out, and Jason takes you on a tour of all the great new features.
-
SharePoint Custom Code Performance
Last updated: Tuesday, September 7, 2021
Published in: CODE Magazine: 2014 - July/August
If you’ve ever wondered why SharePoint is so slow and if there was anything you could do about it, you’ll want to read Sahil’s exploration of this common problem.
-
What’s New in CODE Framework in 2014
Last updated: Thursday, September 9, 2021
Published in: VFP Conversion Papers, CODE Magazine: 2014 - July/August, Markus Egger Talks Tech
There are a bunch of hot new tools in CODE Framework that you’ll want to explore, including a new theme, new View Actions, List improvements, a Flow Form layout, support for new versions of Visual Studio and the .NET Framework, and enhancements to the View Visualizer.
-
XAML Anti-Patterns: Virtualization
Last updated: Thursday, September 9, 2021
Published in: CODE Magazine: 2014 - July/August, Newsletters, Markus Egger Talks Tech
Markus shows us why virtualization gets a bad reputation and how to clean it up.
-
Tips and Tricks for Flexible Code
Last updated: Monday, September 20, 2021
Published in: CODE Magazine: 2014 - May/June
If you want to develop code that’s flexible, extensible, maintainable, and testable, you’ll want to read Paul’s article about some basic things to keep in mind before you start.
-
XAML Magic: Attached Properties
Last updated: Thursday, December 23, 2021
Published in: CODE Magazine: 2014 - May/June, Markus Egger Talks Tech
XAML properties don’t always behave as you think they might. Markus explains how they work and shows you some nifty ways to use these powerful tools.
-
Visual Studio 2013
Last updated: Wednesday, August 31, 2022
Published in: CODE Magazine: 2014 - March/April
Keeping up with Visual Studio’s frequent and often simultaneous releases from multiple sources can be nearly impossible. In another of his edifying series, John Petersen gives us the scoop.
-
Windows Azure Active Directory
Last updated: Wednesday, August 31, 2022
Published in: CODE Magazine: 2014 - March/April
Michiel van Otegem explains Software-as-a-Service by comparing various online products and shows you how to store information about users whether you use Active Directory or Windows Azure Active Directory in the cloud.
-
Developing Cross-Platform Mobile Apps using Xamarin
Last updated: Wednesday, August 31, 2022
Published in: CODE Magazine: 2014 - January/February
Wei-Meng gives us a step-by-step guide to making seamless cross-platform mobile apps with Xamarin.
-
New iOS 7 APIs for the C# Developer
Last updated: Monday, January 3, 2022
Published in: CODE Magazine: 2014 - January/February
You can use Xamarin to directly access native iOS APIs and still take advantage of what you know about C# and the .NET Framework. Jason shows us just how easy it is.
-
Using the WPF TreeView with Multiple Levels
Last updated: Thursday, December 30, 2021
Published in: CODE Magazine: 2014 - January/February
When your WPT TreeView needs to go deeper than two levels, you might run into a snag. Paul shows us how to use the HierarchicalDataTemplate to get around this problem.
-
Rendering ASP.NET MVC Razor Views to String
Last updated: Tuesday, April 5, 2022
Published in: CODE Magazine: 2013 - November/December
The Razor View Engine (usually used in ASP.NET MVC to render HTML views) is useful beyond standard ASP.NET MVC scenarios. In this article, Rick shows how it is done and why it is useful.
-
Using Active Directory in .NET
Last updated: Monday, January 3, 2022
Published in: CODE Magazine: 2013 - November/December
Sometimes your .NET applications need to interact with Microsoft Active Directory (AD) to authenticate users, get a list of users, retrieve groups, or determine which users are within which AD groups. There are a few different approaches you can use to retrieve information from your AD database within your domain.
-
Getting to Know the Identity of .NET 4.5
Last updated: Wednesday, August 31, 2022
Published in: CODE Magazine: 2013 - September/October
Since the release of .NET 1.0 more than ten years ago, the classes governing identity have remained unchanged. That’s a good thing, because identity and security is at the core of most applications, so you don’t want that to change very often. However, with the release of .NET 4.5, the identity model has changed significantly.
-
Listing Processes Running on a Computer
Last updated: Monday, April 25, 2022
Published in: CODE Magazine: 2013 - September/October
I have a client that has a few Windows Services and some EXEs that run on a computer to perform various business functions. Every once in a while, the processes fail and need to be restarted. I helped the client write a Windows Service to monitor their running processes and ensure that they are up and running and to notify them and to attempt to restart those processes. As part of this process, I had to write a class to get a list of all of the processes running on the current computer or on another computer on their network.
-
The Simplest Thing Possible: New and Improved Features in Visual Studio 2012 and ASP.NET
Last updated: Wednesday, August 31, 2022
Published in: CODE Magazine: 2013 - July/August
Recently, Microsoft released the Visual Studio 2012.2 ASP.NET and Web Tools Refresh and the Visual Studio Update #2. In this article, I will highlight a few of the new and improved features that you will want to consider using right away. Before you can take advantage of these features, you will need to download and install these updates:
-
App Only Permission Policy
Last updated: Tuesday, May 24, 2022
Published in: CODE Magazine: 2013 - May/June
Apps are the biggest change in SharePoint 2013. Over the past many years, SharePoint developers have been trying to figure out how to make applications work securely with each other, without users dealing with excessive passwords. Ideally, enterprises should have the confidence that installed software isn’t doing more than what they think it is doing. All this is being solved with SharePoint Apps.
-
Building a CODE Framework Service and Consuming It on an iPhone Application
Last updated: Tuesday, May 31, 2022
Published in: VFP Conversion Papers, CODE Magazine: 2013 - May/June
In this article, you will create a CODE Framework RESTful service and an iPhone application from scratch. For the client side, you will utilize XCode (yes, you’ll need a Mac!), which uses Objective-C as the primary language. This article won’t teach you the language; you need to know the basics of Objective-C. Even if you don’t know anything about it but want to code right away, read the article “Building a Twitter Search Client on iOS,” by Ben Scherman, available for all CODE readers in the Xiine application for Windows, Android, and iPhone. For the database, you’ll use any instance of SQL Server 2008. The service will be written in C#, using the latest version of CODE Framework, available on http://codeframework.codeplex.com, where you will find not only the download link, but also a lot of useful information.
-
Creating Collections of Entity Objects
Last updated: Thursday, May 26, 2022
Published in: CODE Magazine: 2013 - May/June
Almost every programmer knows (unless you have been living under a rock for the last five years or so) that you should be using classes for all of your programming. You should also be using collections of objects instead of using a Data Reader, a DataSet, or a DataTable in your applications. The reasons for using collections are many and are explored in this article.
-
Hello, Arduino: Write Code That Interacts with the Real World
Last updated: Wednesday, August 31, 2022
Published in: CODE Magazine: 2013 - May/June
Take the first step in raising your robot army and meet the Arduino, the microcontroller designed to be approachable and fun. From blinky lights to motors, temperature sensors to wi-fi, RFID to MIDI, you can make your code do stuff.
-
A Windows 8 Look and Feel for WPF, Part 3
Last updated: Thursday, June 2, 2022
Published in: CODE Magazine: 2013 - March/April
In Part 1 of this article you learned how to create a Windows 8 look and feel for your WPF applications. In Part 2 of this article you learned to create a few of the user controls that went into making the shell application. In this final article in this series, you will learn how to create the last few user controls that I used to create the Windows 8 Shell application. In this article, you will learn to put together a WPF Image button, an Image button with text and finally the main Tiles used for the primary navigation system.
-
CODE Framework: Documents, Printing, and Interactive Document UIs
Last updated: Monday, June 6, 2022
Published in: VFP Conversion Papers, Markus Egger Talks Tech, CODE Magazine: 2013 - March/April
The CODE Framework WPF features (based on MVVM and MVC concepts) have become very popular amongst .NET developers, thanks to ease of development paired with a high degree of freedom, control and reuse. Another CODE Framework module takes these concepts and extends them into the domain of documents and printing. Many applications use third-party reporting products to create print and report output, and those products certainly have a good reason for existence and aren’t entirely replaced by the CODE Framework Document features. However, the CODE Framework Document features can replace some functionality that would otherwise be handled by reporting packages, and in addition, the CODE Framework Document features add a significant number of new features including the ability to create more naturally flowing documents and printouts and use those not just for print, but also use them as interactive user interfaces.
-
A Windows 8 Look and Feel for WPF, Part 2
Last updated: Thursday, June 9, 2022
Published in: CODE Magazine: 2013 - January/February
In part 1 of this article, you learned how to create a Windows 8 look and feel for your WPF applications. You were shown a high-level overview of the various components that made up the shell for navigating. In part 2 of this article you will learn to create a WPF Button user control, a Message Box you can style, and a simple Message Broker System. All of these components are used to create the “Windows 8 Style” WPF shell you learned about in part 1.
-
CODE Framework: Accelerating Development with Standard Views and Standard View-Models
Last updated: Friday, June 10, 2022
Published in: VFP Conversion Papers, Markus Egger Talks Tech, CODE Magazine: 2013 - January/February
In prior articles, I have shown how to create WPF-based applications using the CODE Framework and the MVVM and MVC patterns. This enabled developers to create quality applications quickly and in a fashion that can easily be understood by developers of all skill levels. In those articles I showed how to use view-models and views to create UIs. In this article, I am going to take this concept further by showing you how you do not even have to create new views and view-models, but instead can use the ones CODE Framework defines for you out of the box.
-
Workflows in SharePoint 2013, Part 1
Last updated: Thursday, June 9, 2022
Published in: CODE Magazine: 2013 - January/February
If we have been friends for a while, you must know my opinions about workflows in SharePoint 2010 and SharePoint 2007. I didn’t think they were very good, especially from a performance and scalability point of view. Frankly I think Microsoft should have called them “workslows.” Though, I don’t think it was the implementation in SharePoint that was the issue, it was fundamental issues with Workflow Foundation, compounded by the nature of SharePoint that acerbated the issues. Well, I am happy to say that Workflows in SharePoint 2013 are something I feel quite comfortable recommending to anyone, and I hope to make that case in this article.
-
“Napa” Development Tools for SharePoint 2013 and Office 2013
Last updated: Tuesday, February 19, 2019
Published in: CODE Magazine: 2012 - November/December
One of the biggest issues in getting started with SharePoint development are the 2091097 steps you need to go through, and the heavy duty machine you need to invest in, to create a development environment for a SharePoint and Office developer. This is not unlike the fact that creating and running a production SharePoint farm can be extremely time-consuming.
-
A Windows 8 Look and Feel for WPF, Part 1
Last updated: Wednesday, August 31, 2022
Published in: CODE Magazine: 2012 - November/December
Many people will not be able to upgrade to Windows 8 right away for various reasons. However, there is nothing to stop you from designing your WPF applications to have a similar look and feel.
-
CODE Framework: Creating Application Themes
Last updated: Tuesday, February 19, 2019
Published in: VFP Conversion Papers, Markus Egger Talks Tech, CODE Magazine: 2012 - November/December
In prior articles, I have shown how to create WPF-based client applications using the CODE Framework and the default themes it ships with. This is a great way to create applications quickly yet make them very reusable and maintainable. However, using the default themes is just the tip of the iceberg. CODE Framework’s theming system is completely open and the default options are just that: defaults. And it turns out to be surprisingly straightforward to create your own themes.
-
Tasks and Parallelism: The New Wave of Multithreading
Last updated: Saturday, September 26, 2020
Published in: CODE Magazine: 2012 - November/December
Since the beginning of .NET, developers have been able to take advantage of multithreading when developing applications. In fact we’ve been given more than one programming model to accommodate just about any requirement that might come across. There’s the Thread class, the Thread Pool, the Async Pattern, and the Background Worker. Well, as if that isn’t enough, we now have a couple of more patterns that bring with them another genre - parallel programming.
-
LINQ to XML Instead of a Database
Last updated: Wednesday, February 20, 2019
Published in: CODE Magazine: 2012 - September/October
When people think of having to store data for their applications, a database such as SQL Server immediately comes to mind. However, XML files are very handy for storing data without the overhead of a database. Using XML files to cache often-used, but seldom changed data such as US state codes, employee types and other validation tables can avoid network roundtrips and speed up your application. In addition, XML files are great for off-line applications where a user needs to add, edit and delete data when they can’t connect to a database.
-
Understanding Dependency Injection and Those Pesky Containers
Last updated: Tuesday, February 19, 2019
Published in: CODE Magazine: 2012 - September/October
We seem to be an industry enamored with buzz words. Even though XmlHttpRequest has been around since the mid-90s, mainstream programmers didn’t give it a second thought until someone attached the term AJAX to it. The same is true for the never-ending quest to put as many different words as we can in front of “driven-development.” Another term that hit the scene in recent years is dependency injection.
-
ASP.NET MVC 4 Highlights - Part 2: Bundling and Minification
Last updated: Wednesday, August 31, 2022
Published in: CODE Magazine: 2012 - July/August
In the first installment of this series, I explored a few of the new features in ASP.NET MVC 4, including the new default project templates, mobile templates, and display modes. Since that article, ASP.NET MVC 4 has been released to beta. For brevity’s sake, when I refer to MVC the design pattern, I’m referring to the ASP.NET implementation of the pattern. In this installment, I’m going to focus on one of MVC’s most useful features: integrated JavaScript and CSS bundling and minification.
-
Debugging Hard to Reproduce Issues
Last updated: Wednesday, August 31, 2022
Published in: CODE Magazine: 2012 - July/August
Software developers live and breathe debugging. It’s an essential and integral part of our day-to-day job. Whenever we are confronted with any bug in code, our typical first question is, “How can I reproduce this issue?” Any problems that cannot be reproduced are generally considered tricky to resolve. In order to really understand the challenges with debugging hard to reproduce issues, let’s walk through a few scenarios here.
-
Extension Methods
Last updated: Tuesday, February 19, 2019
Published in: CODE Magazine: 2012 - July/August
Many developers find that keeping up with new technologies can be challenging and a drain to limited resources. Sometimes a review of basic .NET and C# skills is useful. This review of extension methods addresses the basic concept and implementation. Thousands of implementations are most certainly found in the industry, but in this article I want to address a few popular and useful ones.
-
Getting Rid of Your Code Behind
Last updated: Wednesday, February 20, 2019
Published in: CODE Magazine: 2012 - July/August
You know you should be moving code out from behind your forms, windows and web pages and into stand-alone classes. Everyone preaches that this is what to do, everyone shows you examples of ViewModel classes, but no one really shows you a real-world example of how to get rid of the code behind.
-
Intro to Metro
Last updated: Wednesday, February 20, 2019
Published in: CODE Magazine: 2012 - July/August
Ten years after the release of the .NET Framework, Microsoft is stirring the pot again with a new development platform that set’s to focus your talents on what everyone is betting is the next big thing, mobile devices; specifically in this case, tablets. The Windows Runtime, or WinRT, is the foundation for the development of applications designed to target Windows 8-driven touch-enabled devices, but what does that mean for .NET developers and their existing skill sets?
-
SharePoint Applied: Large Files in SharePoint 2010
Last updated: Wednesday, February 20, 2019
Published in: CODE Magazine: 2012 - July/August
When a team at Microsoft first conceived of SharePoint, the product team decided that the content database was the best place to store file uploads in SharePoint. Before you pull out daggers, consider that there were many advantages to this choice. You can never have a virus corrupting the server in an upload that goes into the database. No filename issues. Transaction support. Easy backups, etc. Also, believe it or not, for a certain file size (smaller the better), databases can actually offer better performance than traditional file systems for storage. In addition, the product team decided to rely heavily on GUIDs and clustered indexes inside the content database - again, a choice with positives and negatives.
-
An Introduction to ASP.NET Web API
Last updated: Tuesday, February 19, 2019
Published in: CODE Magazine: 2012 - May/June
Microsoft recently released the ASP.NET MVC 4.0 beta and along with it, the brand spanking new ASP.NET Web API. Web API is an exciting new addition to the ASP.NET stack that provides a new, well-designed HTTP framework for creating REST and AJAX APIs (API is Microsoft’s new jargon for a service, in case you’re wondering). Although Web API currently ships and installs with ASP.NET MVC 4, you can use Web API functionality in any ASP.NET project, including WebForms, WebPages and MVC or none of the above. You can also self-host Web API in your own applications.
-
CODE Framework: Building Productive, Powerful, and Reusable WPF (XAML) UIs with the CODE Framework
Last updated: Tuesday, February 19, 2019
Published in: VFP Conversion Papers, CODE Magazine: 2012 - May/June, Markus Egger Talks Tech
In a prior installment of this series of articles about CODE Framework (“CODE Framework: Writing MVVM/MVC WPF Applications”, Jan/Feb 2012), I discussed how to use the WPF features of CODE Framework to create rich client applications in a highly productive and structured fashion reminiscent of creating ASP.NET MVC applications, although with WPF MVVM concepts applied. In this article, I will dive deeper into the subject and discuss the unique benefits of the CODE Framework WPF components which enable developers to create the part of the UI that is actually visible in a highly productive and reusable manner.
-
Grokking the DLR: Why it’s Not Just for Dynamic Languages
Last updated: Tuesday, February 19, 2019
Published in: CODE Magazine: 2012 - May/June
Many .NET developers have heard of the Dynamic Language Runtime (DLR) but they don’t quite know what to make of it. Developers working in languages like C# and Visual Basic sometimes shirk dynamic programming languages because they fear the scalability problems that have historically been associated with using them. Also of concern is the fact that languages like Python and Ruby don’t perform compile-time type checking, which can lead to runtime errors that are very costly to find and fix. These are valid concerns that may explain why the DLR hasn’t enjoyed more popularity among mainstream .NET developers in the two years since its official release. After all, any .NET Runtime that has the words Dynamic and Language in its title must be strictly for creating and supporting languages like Python, right?
-
CODE Framework: Building Services and SOA Business Layers
Last updated: Tuesday, February 19, 2019
Published in: VFP Conversion Papers, CODE Magazine: 2012 - March/April, Markus Egger Talks Tech
In the last issue of CODE Magazine, we took a look at CODE Framework’s WPF features. This time, we are going to look at a completely different area of the framework: Creating business logic and middle tiers as SOA services. SOA is the cornerstone of many modern applications, creating systems that are more maintainable, flexible, and suitable for a wide range of scenarios, ranging from Windows to Web and Mobile scenarios using a wide variety of technologies, and outperforming conventional multi-tiered applications in a range of metrics. Using CODE Framework, it also becomes easy and extremely productive to build SOA layers.
-
Getting Started with RavenDB
Last updated: Wednesday, August 31, 2022
Published in: CODE Magazine: 2012 - March/April
You might have heard some things about NoSQL; how Google and Facebook are using non-relational databases to handle their load. And in most cases, this is where it stopped. NoSQL came about because scaling relational databases is somewhere between extremely hard to impossible.
-
Smashing the Myth: Why You Must Learn F# - Even If You Aren’t Writing Rocket Science Apps
Last updated: Tuesday, February 19, 2019
Published in: CODE Magazine: 2012 - March/April
If you are a .NET software developer, you have heard of F#. You may have read an article, seen a talk at a user group, or otherwise heard the buzz. However, if those means of reaching you have failed, at the very least, you have noticed it conspicuously appear in the list of languages you can base a solution on in Visual Studio 2010. If you write code on the .NET Framework, you would have to be living under a rock to have not heard of F#.
-
Working with Windows Phone User Interfaces, Part 2
Last updated: Sunday, December 3, 2023
Published in: CODE Magazine: 2012 - March/April
In Part 1 of this article you learned how to work with orientation changes on the Windows Phone and how to create horizontally scrolling pages using Panorama and Pivot pages. In Part 2 you’ll see how to interact with some of the built-in applications on the phone through the use of the Launcher and Chooser applications.
-
Working with Windows Phone User Interfaces, Part 1
Last updated: Thursday, February 21, 2019
Published in: CODE Magazine: 2012 - January/February
Developing for Windows Phone is easy if you have been doing any XAML at all. That’s because you use Silverlight for Windows Phone development.
-
Building CodeTweet for Windows Phone
Last updated: Tuesday, February 19, 2019
Published in: CODE Magazine: 2011 - September/October
In this article, we take a look at what’s involved with building a simple Twitter Search client for Windows Phone. We will cover what tools you need, where to download them, how to design, build and test the app and finally, how to publish it to the Windows Phone Marketplace.
-
MVP Corner: Looking Back on the Great VB/C# War
Last updated: Wednesday, February 20, 2019
Published in: CODE Magazine: 2011 - July/August
Recently, I received an email comment on a blog post I wrote roughly 3 1/2 years ago. I had completely forgotten about writing the post, but as soon as I saw the title I remembered every word of it. It also got me thinking about who the guy was that wrote it... then and now.
-
Six Silverlight ListBox Tips
Last updated: Tuesday, February 19, 2019
Published in: CODE Magazine: 2011 - July/August
The Silverlight ListBox is much more than you may think. When most people think of a ListBox they typically think of just a simple control that displays rows of text. However, the Silverlight ListBox is one of the most flexible controls you will find. I tend to think of the ListBox as similar to the ASP.NET Repeater control as it too is very flexible. In this article, I will show you six different ways to display data in a Silverlight ListBox.
-
The Baker’s Dozen: 13 Power Tips for Using SQL Server Reporting Services 2008 R2
Last updated: Tuesday, February 19, 2019
Published in: CODE Magazine: 2011 - July/August
With each new version of SQL Server Reporting Services, Microsoft continues to offer new functionality for reporting. SQL Server 2008 R2, released to manufacturing in mid-2010, represents Microsoft’s fourth major release of Reporting Services in the last 10 years. This fourth release focuses on map generation and various business intelligence/data visualization features. In this article, I’ll demonstrate 13 significant features in SSRS.
-
Using Custom Controls to Enhance LightSwitch Application UI
Last updated: Wednesday, August 31, 2022
Published in: CODE Magazine: 2011 - July/August
Developers of LightSwitch applications are not limited to the set of standard UI controls that come “out of the box.” If your application has specific requirements that are not covered by the standard control set, you can use third-party LightSwitch controls or use regular Silverlight controls (also called “custom controls”) to enhance your UI. In this article I will show you how to get started with custom controls and how to make custom controls and screens work together (interact).
-
Post Mortem: Developing the OSS Project AutoMapper
Last updated: Wednesday, February 20, 2019
Published in: CODE Magazine: 2011 - May/June
Jimmy explores what went right and what went wrong with version 1.0 of AutoMapper.
-
Understanding the Data Validation Framework in Visual Studio LightSwitch
Last updated: Wednesday, August 31, 2022
Published in: CODE Magazine: 2011 - May/June
Any application that deals with data needs data validation. Prem walks through aspects of data validation in Microsoft Visual Studio LightSwitch and provides insight into certain details of the underlying framework and design.
-
Using Configurations to Manage SQL Server Extended Properties
Last updated: Wednesday, August 31, 2022
Published in: CODE Magazine: 2011 - May/June
Before you start hard coding parts of your project to work with metadata in SQL Server, make sure that the functionality you want isn’t already part of the product.
-
Getting the Most Out of the Save Pipeline in Visual Studio LightSwitch
Last updated: Wednesday, August 31, 2022
Published in: CODE Magazine: 2011 - March/April
Visual Studio LightSwitch applications consist of three tiers: presentation, logic and data. This article discusses the logic tier and its save pipeline. The save pipeline is where developers write business logic that runs as changes are processed on the logic tier and saved to the data storage tier. The save pipeline is automatically generated with every LightSwitch application. Understanding the processing done in the save pipeline is not required to successfully build and deploy applications with LightSwitch, but adding save pipeline business logic provides additional flexibility and control when data is saved.
-
Inside Visual Studio LightSwitch
Last updated: Tuesday, February 19, 2019
Published in: CODE Magazine: 2011 - March/April
Microsoft Visual Studio LightSwitch uses a model-centric architecture for defining, building, and executing a 3-tier LightSwitch application.
-
The Razor View Engine
Last updated: Wednesday, August 31, 2022
Published in: CODE Magazine: 2011 - March/April
The new view engine for ASP.NET MVC and WebMatrix combines simplicity and functionality to facilitate clean view development. In this article, I’ll dive into the Razor View Engine, the new default view engine for the ASP.NET MVC framework and WebMatrix products. Razor’s main goal is to simplify view development and to improve developer productivity while providing a clean view infrastructure.
-
Centering Text on a WPF Shape Using a User Control
Last updated: Tuesday, February 19, 2019
Published in: CODE Magazine: 2010 - July/August
WPF excels at creating great looking applications.
-
Microsoft Dynamics CRM 4.0 - A Platform for Packaged Software?
Last updated: Wednesday, February 20, 2019
Published in: CODE Magazine: 2010 - July/August
Since its introduction in 2008, Microsoft Dynamics CRM 4.0 has been touted as a platform for rapid application development.We’ve always been hard core C# and ASP.NET snobs, but we were intrigued by the value that Dynamics CRM promised. We set out to build our next generation software product on that platform, and learned a lot about what’s real and what’s not so real. In this article, we will share the rollercoaster ride of our experience developing our software product on this new CRM “platform.”
-
The Baker’s Dozen: 13 Examples of Functionality in SQL Server 2008 Integration Services
Last updated: Tuesday, February 19, 2019
Published in: CODE Magazine: 2010 - July/August
A skilled database developer might find it difficult to accept that other tools can increase productivity. When Microsoft released SQL Server 2005 Integration Services (SSIS 2005), I did not think that any tool could possibly make me more productive than the C# and T-SQL code I was writing by hand. After some reconsideration (and subtle persuasion from peers), I discovered that SSIS 2005 contained many features that indeed reduced my development time - WITHOUT sacrificing flexibility. Microsoft added new functionality in SSIS 2008 to make a strong product even better. In this article, I’ll present 13 different examples that demonstrate the power of Integration Services.
-
A Practical Use of Indexers
Last updated: Tuesday, February 19, 2019
Published in: CODE Magazine: 2010 - March/April
Consider this hypothetical: You need to track different ways it is permissible to contact a customer.Or perhaps there are multiple attributes you wish to attach to an entity. Further, perhaps you want to define new attributes that can vary from entity to entity. From a database perspective, this can present a thorny problem. Fortunately, indexers in C# provide an elegant solution to the problem. In this article, I will show you how to use indexers to expand an organization’s data and at the same time, have minimal impact on an organization’s database structure. I will also show you how to incorporate this technique with NHibernate and how to verify your results with the MBUnit and TestDriven.net unit testing frameworks.
-
ASP.NET MVC and the Spark View Engine
Last updated: Wednesday, August 31, 2022
Published in: CODE Magazine: 2010 - March/April
Getting friendly with HTML in ASP.NET MVC just got a whole lot easier.In this article, I’ll delve into the Spark View Engine, an alternate view engine for the ASP.NET MVC Framework. Spark’s main goal is to allow HTML to dominate the flow of view development while allowing code to fit in seamlessly.
-
Developing Database Agnostic Applications with Entity Framework
Last updated: Wednesday, August 31, 2022
Published in: CODE Magazine: 2010 - March/April
Microsoft released Entity Framework, an ORM (Object Relational Mapping) tool, in 2008.Entity Framework gives developers the ability to be abstracted from the underlying relational database management system and allows them to talk to a database using familiar LINQ-based syntax.
-
Supercharging ASP.NET MVC with MvcContrib
Last updated: Tuesday, February 19, 2019
Published in: CODE Magazine: 2010 - March/April
Hot on the heels of the groundbreaking release of ASP.NET MVC CTP 1 in December of 2007, an open source project called MvcContrib came to life.MvcContrib has enjoyed tens of thousands of downloads since it started in December of 2007. In this article, I will explain MvcContrib; it’s major components, how to use it, and how to get involved in its continued development.
-
Using the Amazon Web Service SDK for .NET
Last updated: Wednesday, August 31, 2022
Published in: CODE Magazine: 2010 - March/April
The richest set of cloud computing services comes from a little e-commerce company known as Amazon.com. Developers can access the Amazon Web Services (AWS) platform using numerous tools including the .NET platform.Amazon.com is a major player in the cloud computing space and has numerous services available to developers. In late 2009, Amazon released the AWS SDK for .NET. This article will demonstrate using the AWS SDK to create a custom backup service using the Amazon Simple Storage Service (S3).
-
Can a Fish Use a Bicycle?
Last updated: Thursday, December 16, 2021
Published in: CODE Magazine: 2010 - January/February
-
Introducing Advanced Code Contracts with the Entity Framework and Pex
Last updated: Wednesday, August 31, 2022
Published in: CODE Magazine: 2010 - January/February
Martin introduces Design by Contract and Code Contracts, and gives you a sneak preview of Pex—Microsoft’s new test-suite generator. Along the way, he will show you how to add contracts to ADO.NET entities and some interesting coding strategies, good practices, and pitfalls you may encounter while making a deal with your code.With Code Contracts, Microsoft delivers its own flavor of Design by Contract for the .NET Framework. But wait, what is this thing sometimes called Contract-First Development? How will it change the way you develop software and write your unit tests? And first and foremost, how do you use Code Contracts efficiently?In this article, I will introduce Design by Contract and Code Contracts, as well as give you a sneak preview of Pex-Microsoft’s new test-suite generator. Along the way, I will show you how to add contracts to ADO.NET entities and some interesting coding strategies, good practices, and pitfalls you may encounter while making a deal with your code.
-
Reinventing Error Handling
Last updated: Saturday, January 18, 2020
Published in: CODE Magazine: 2010 - January/February
Ned introduces the most significant advance in error handling since exceptions and he shows you a new way to look at errors.This article introduces the most significant advance in error handling since exceptions.You get improved tools for today and a glimpse of radical possibilities for tomorrow. You get a framework which supports more expressive error handlers and gives them equal access to error context information. You get a roadmap for adding improved error handling capabilities, including class-level error handlers and the ability to fix errors at run time. Above all, you get a new way to look at errors.
-
S.O.L.I.D. Software Development, One Step at a Time
Last updated: Wednesday, August 31, 2022
Published in: CODE Magazine: 2010 - January/February
Derick outlines how to achieve the benefits of low coupling, high cohesion, and strong encapsulation. He also shows how the five S.O.L.I.D. design principles can get you there.Most professional software developers understand the academic definitions of coupling, cohesion, and encapsulation.However, many developers do not understand how to achieve the benefits of low coupling, high cohesion and strong encapsulation, as outlined in this article. Fortunately, others have created stepping stones that lead to these goals, resulting in software that is easier to read, easier to understand and easier to change. In this article series, I will define three of the primary object-oriented principles and show how to reach them through the five S.O.L.I.D. design principles.
-
ASP.NET MVC 2 in Action
Last updated: Tuesday, February 19, 2019
Published in: CODE Magazine: 2009 - November/December
Hot on the heels of the groundbreaking release of ASP.NET MVC 1.0, the ASP.NET MVC team at Microsoft has already released the first Community Technology Preview (CTP) of version 2.I have already predicted that Microsoft’s MVC Framework will become the new way to develop Web applications on top of ASP.NET. In this article, I will give a first look at the plans for version 2 and some of the features that already work in the first CTP.
-
Silverlight 3: The Highlights
Last updated: Wednesday, August 31, 2022
Published in: CODE Magazine: 2009 - November/December
From its earliest beginnings, Silverlight has tried to excite and inspire.Now that Silverlight 3 has shipped, it is time to determine if this is the magical version that every developer should finally take a look at. In this article, I will show you the changes Microsoft has made in hopes of helping you make that decision for your own organization.
-
What’s New in Visual C# 4.0?
Last updated: Tuesday, February 19, 2019
Published in: CODE Magazine: 2009 - November/December
Visual C# version 4.0 offers new features that make it easier for you to work in dynamic programming scenarios.Besides dynamic programming, you have support for optional and named parameters, better COM interop support, and contra-variance and covariance. This article will show you how each of these features work and provide suggestions of how they can be applied to help you be more productive.
-
Getting Back to Basics
Last updated: Wednesday, February 20, 2019
Published in: CODE Magazine: 2009 - September/October
Our industry is constantly changing. So much so, that it is difficult to keep up sometimes.
-
Post Mortem: Tower48 Software Escrow
Last updated: Saturday, January 18, 2020
Published in: CODE Magazine: 2009 - September/October, Markus Egger Talks Tech
-
ThoughtWorking: Functional Programming in C# 2.0
Last updated: Thursday, February 21, 2019
Published in: CODE Magazine: 2009 - May/June
Writing software is hard, particularly when the tools you use force you to think at too low a level; it’s time to start thinking about changing the way you write code… by making it easier to write code.Taking on new ways to program doesn’t always mean tossing away your favorite programming language or environment. Sometimes it just means taking a new look at how you’re using your language and trying out a few new ideas. It’s time to take a hard look at your favorite language and see if it’s possible to “fall in love all over again”.
-
An Introduction to jQuery, Part 1
Last updated: Tuesday, February 19, 2019
Published in: CODE Magazine: 2009 - January/February
jQuery is a small JavaScript library that makes development of HTML-based client JavaScript drastically easier. With client logic getting ever more complex and browsers still diverging in features and implementation of features, jQuery and other client libraries provide much needed normalization when working with JavaScript and the HTML DOM.
-
Building Domain Specific Languages in C#
Last updated: Tuesday, February 19, 2019
Published in: CODE Magazine: 2009 - January/February
At the JAOO conference in Aarhus, Denmark this year, domain specific languages came up in virtually every conversation. Every keynote mentioned them, a lot of sessions discussed them (including a pre-conference workshop by Martin Fowler and myself), and you could hear “DSL” in most of the hallway conversations. Why this, and why now?
-
The Baker’s Dozen: 13 Miscellaneous C#, SQL, and Business Intelligence Development Tips
Last updated: Wednesday, August 31, 2022
Published in: CODE Magazine: 2009 - January/February
No, the title isn’t a misprint-this installment of the Baker’s Dozen will visit both sides of the planet. These days, many .NET user group meetings focus on database and business intelligence topics as well as hardcore .NET content. Over the last several months, I’ve spent roughly half my time modifying my own development framework for WCF. The result is some basic but functional factory classes I’d like to share. The other half of the time, I’ve been looking at different capabilities in the SQL Server 2005 and 2008 Business Intelligence stack, and solving requirements that BI developers often face. So rather than pick one side and make the other side wait two months, I decided to combine the two.
-
From Delegate to Lambda
Last updated: Tuesday, February 19, 2019
Published in: CODE Magazine: 2008 - September/October
The key to understanding lambda expressions is understanding delegates. Delegates play a tremendously important role in developing applications for the .NET Framework, especially when using C# or Visual Basic. Events, a special application of delegates, are used all over the framework. And the application and possibilities of delegates has only grown over time. C# 2.0 introduced the concept of anonymous methods and C# 3.0 and VB 9 take anonymous methods to the next level with lambda expressions. This article reviews the evolution of delegates and examines possibilities and syntax of delegates and lambdas in .NET 3.5.
-
Languages Re-Unleashed
Last updated: Saturday, December 18, 2021
Published in: CODE Magazine: 2008 - September/October
Sept/Oct 08 Editorial by Rod Paddock
-
Polyglot Programming: Building Solutions by Composing Languages
Last updated: Wednesday, February 20, 2019
Published in: CODE Magazine: 2008 - September/October
Polyglot programming refers to leveraging existing platforms by solving problems via solutions that compose special purpose languages.This concept leverages the multi-language nature of the CLR to create simpler solutions to vexing problems. This article delves into the motivation, benefits, and challenges of writing applications in this style.
-
Beyond the Reach
Last updated: Wednesday, February 20, 2019
Published in: CODE Magazine: 2008 - July/August
July August 2008 .Finalize(): column by Ken Getz.
-
Getting Started with Windows Mobile Development
Last updated: Wednesday, August 31, 2022
Published in: CODE Magazine: 2008 - July/August
In today’s world of fast food, fast cars, and instant gratification, people expect to be in touch at all times.We have become conditioned to staying in touch with businesses, friends, and families. Because of this desire for instant data, we have the Internet, cell phones, Wi-Fi, MP3 players, and DVD players. As the equipment needed to drive this thirst has become smaller and smaller, we find ourselves looking for portable replacements for our bulky desktop computers.
-
MVP Corner: A Baker’s Dozen of Reflections
Last updated: Tuesday, February 19, 2019
Published in: CODE Magazine: 2008 - July/August
July August 2008 MVP Corner by Kevin S. Goff
-
WPF Meets the iPhone
Last updated: Wednesday, August 31, 2022
Published in: CODE Magazine: 2008 - March/April
The iPhone is one of the most compelling and exciting user interfaces to appear on any consumer electronic device, with many innovations that make it a pleasure to use. How can you deliver a similar experience with your .NET applications?This article demonstrates how you can implement these features in your .NET applications in a step-by-step format as you recreate the iPhone interface using Windows Presentation Foundation (WPF) technology with both Visual Studio 2008 and Microsoft Expression Blend.
-
C# 3.0 Syntax Additions-Design Guidelines
Last updated: Tuesday, February 19, 2019
Published in: CODE Magazine: 2008 - January/February
C# 3.0 includes a few syntactical additions to the language. For the most part, Microsoft added these language additions to support Language Integrated Query (LINQ). These features include (but are not limited to) lambda expressions, extensions methods, anonymous types, implicitly typed local variables, automatic properties, and object initializers.
-
Visual Basic and Respect
Last updated: Wednesday, February 20, 2019
Published in: CODE Magazine: 2008 - January/February
Ken Getz Jan/Feb 08 FInalize article.
-
Introducing XNA Game Studio Express
Last updated: Wednesday, August 31, 2022
Published in: CODE Magazine: 2007 - September/October
What does XNA stand for? It’s a recursive acronym that stands for “XNA’s Not Acronymed”. Aren’t developers fun?
-
Microsoft XNA: Ready for Prime Time?
Last updated: Tuesday, February 19, 2019
Published in: CODE Magazine: 2007 - September/October
Microsoft opened the doors of game development to the .NET developer community in December 2006 with the first release of XNA Game Studio Express.No longer constrained to enterprise systems, database-driven applications or Web service layers, .NET developers can now spread their digital wings and let their pixelized imagination run wild as their favorite development platform and language now enable them to explore new worlds and new challenges of their own making, all in full high definition (HD) at 60 frames per second! But who is XNA for? Is it a serious enough initiative, platform, and set of tools for professional game developers in the gaming industry? Eager to answer those questions, I (virtually) sat down with a number of professional game designers, studio directors, and developers for a chat in order to find out: Is Microsoft XNA ready for prime time?
-
Create a Custom DataGridView Column
Last updated: Wednesday, August 31, 2022
Published in: CODE Magazine: 2007 - July/August
Creating custom column types for the DataGridView control isn’t nearly as tricky as it once was.In this article, you’ll learn how to take advantage of inheritance to create your own bar graph column in a grid cell.
-
The Baker’s Dozen: A 13-Step Crash Course for Using LINQ
Last updated: Wednesday, August 31, 2022
Published in: CODE Magazine: 2007 - July/August
How many software tasks DON’T involve reading through data? Answer: very few. Developers work all the time with database data, XML data, DataSets, collections, lists, and arrays-all with different syntax and functionality for each one. Developers who write T-SQL code often covet set-based language statements when they work against other types of data. Additionally, developers who have coded against strongly-typed custom collections wish they could write SQL database queries with IntelliSense. Language Integrated Query (LINQ), a set of extensions to the .NET Framework for the next version of Visual Studio codename “Orcas”, brings the promise of integrated and uniform query capabilities to increase developer productivity when working with different types of data. While LINQ is a large topic worthy of books, this edition of The Baker’s Dozen will provide a crash course to learn what’s under the LINQ hood.
-
Everyday Use of Generics
Last updated: Wednesday, February 20, 2019
Published in: CODE Magazine: 2007 - March/April
You may think of generics as a Ferrari that you only take out for special occasions; but they are better compared to your trusty pickup, perfectly suited for everyday use.
-
The Baker’s Dozen: 13 Steps for Building a Lookup Page Using ASP.NET 2.0, SQL 2005, and C# 2.0
Last updated: Wednesday, August 31, 2022
Published in: CODE Magazine: 2007 - March/April
Lookup and navigation screens initially seem like no-brainers, when compared to other parts of an application-yet by the time a developer has met all the user requirements and requests, he/she has expended much more time than expected. This issue of The Baker’s Dozen will build a lookup Web page using ASP.NET 2.0, SQL Server 2005, and C# 2.0. The lookup and results page will contain optional lookup criteria and custom paging of the result set. The solution will utilize new language features in SQL 2005 for providing ranking numbers to correlate with custom paging, and new capabilities in .NET generics to pump the results of a stored procedure into a custom collection. Just like Mr. Mayagi taught Daniel the martial arts by doing exercises, the example in this article will demonstrate some common design patterns, such as factory creation patterns, using .NET generics. The article also subtly presents a general methodology for building database Web pages.
-
Building Windows 8 Apps with C# and XAML - Introduction to UI Design Patterns for Windows 8 Apps Chapter Excerpt
Last updated: Wednesday, February 20, 2019
Published in: Book Excerpts
In this excerpt from Building Windows 8 Apps with C# and XAML, learn about the various parts of MVVM and how to apply it with a special focus on testing. By Jeremy Likness, Published Oct 25, 2012 by Addison-Wesley Professional. Part of theMicrosoft Windows Development Series series. Copyright 2013 ISBN-10: 0-321-82216-1 ISBN-13: 978-0-321-82216-1. To Purchase go to: http://www.informit.com/store/building-windows-8-apps-with-c-sharp-and-xaml-9780321822161?w_ptgrevartcl=%20Introduction%20to%20UI%20Design%20Patterns%20for%20Windows%208%20Apps%20_1960915.
-
C# 4.0 Unleashed - Chapter 2 -Introducing the C# Programming Language
Last updated: Thursday, February 21, 2019
Published in: Book Excerpts
This excerpt is from the book, C# 4.0 Unleashed, authored by Bart De Smet, Published Jan 4, 201 by Sams. Part of the Unleashed series. ISBN 0672335522, Copyright 2011. For more info, please visit the publisher site http://www.informit.com/store/product.aspx?isbn= 0672330792.
-
C# 5.0 UNLEASHED - CHAPTER 3 - Getting Started with .NET Development Using C#
Last updated: Saturday, January 18, 2020
Published in: Book Excerpts
C# 5.0 Unleashed By Bart De Smet Published Apr 22, 2013 by Sams. Part of the Unleashed series. Copyright 2013. To purchase book click here: http://www.informit.com/store/c-sharp-5.0-unleashed-9780672336904
-
CHAPTER 1 - Introducing the .NET Platform
Last updated: Saturday, January 18, 2020
Published in: Book Excerpts
-
Chapter 11: Generics
Last updated: Wednesday, February 20, 2019
Published in: Book Excerpts
Essential C# 2.0 is a clear, concise guide to C#—including the features new to C# 2.0. The book clearly presents material for beginners and experts and provides contrasts and comparisons between C# and other languages. The C# language is covered comprehensively and each important construct is illustrated with succinct code examples. Complete code examples are available online. Mark Michaelis has organized the material for quick access. Graphical “mind maps” at the beginning of each chapter show what material is covered and how each topic relates to the whole.
-
Chapter 12: Delegates and Lambda Expressions
Last updated: Wednesday, August 31, 2022
Published in: Book Excerpts
PREVIOUS CHAPTERS DISCUSSED extensively how to create classes using many of the built-in C# language facilities for object-oriented development. The objects instantiated from classes encapsulate data and operations on data. As you create more and more classes, you see common patterns in the relationships between these classes.
-
Chapter 2: Creating Versatile Types
Last updated: Wednesday, February 20, 2019
Published in: Book Excerpts
Whenever you create your own classes, you need to consider the circumstances under which they could be used. For example, will two instances of your Item struct ever be compared for equality? Will your Person class need to be serializable, or sortable?
-
Chapter 38: The Payroll User Interface: Model View Presenter
Last updated: Saturday, June 24, 2023
Published in: Book Excerpts
Excerpted from Agile Principles, Patterns, and Practices in C#. As far as the customer is concerned, the Interface is the product.-Jef Raskin
-
Chapter 4 Design Patterns
Last updated: Friday, February 22, 2019
Published in: Newsletters, Book Excerpts
OOP is a powerful concept that solves many problems found in software development. OOP is not the holy grail of programming, but, as we will see throughout this book, it can help in writing code that is easy to read, easy to maintain, easy to update, and easy to expand.
-
Chapter 8
Last updated: Friday, February 22, 2019
Published in: Book Excerpts
C# is an evolving language. This chapter looks at the new features added into C# 4.0 that combine to improve code readability and extend your ability to leverage LINQ to Object queries over dynamic data sources. The examples in this chapter show how to improve the coding model for developers around reading data from various sources, including text files and how to combine data from a COM-Interop source into a LINQ to Objects query.
-
Effective C#: 50 Specific Ways to Improve Your C#, Second Edition, 2nd Edition #32 and #34
Last updated: Wednesday, February 20, 2019
Published in: Book Excerpts
C# has matured over the past decade: It's now a rich language with generics, functional programming concepts, and support for both static and dynamic typing. This palette of techniques provides great tools for many different idioms, but there are also many ways to make mistakes. In Effective C#, Second Edition, respected .NET expert Bill Wagner identifies fifty ways you can leverage the full power of the C# 4.0 language to express your designs concisely and clearly.
-
Essential LINQ
Last updated: Saturday, January 18, 2020
Published in: Book Excerpts
LINQ is one of Microsoft’s most exciting, powerful new development technologies. Essential LINQ is the first LINQ book written by leading members of Microsoft’s LINQ and C# teams. Writing for architects, developers, and development managers, these Microsoft insiders share their intimate understanding of LINQ, revealing new patterns and best practices for getting the most out of it.
-
Fluent C#: Chapter 1 - Application Development
Last updated: Saturday, January 18, 2020
Published in: Book Excerpts
Fluent C# By Rebecca M. Riordan, Published Oct 12, 2011 by Sams. Copyright 2012. Sample Chapter is provided courtesy of Sams Publishing.
-
Hour 3 - Understanding Classes and Objects the C# Way
Last updated: Saturday, January 18, 2020
Published in: Book Excerpts
This chapter teaches the basics of both object-oriented and component-oriented programming, moving on to creating a class in C# and examining how it fulfills the goals of object-oriented and component-oriented programming.
-
How to work with strings
Last updated: Wednesday, February 20, 2019
Published in: Book Excerpts, Newsletters
This is the latest edition of our best-selling C# book. It focuses on how to develop professional Windows Forms applications with C#. But along the way, it teaches you the C# language and core skills that you’ll use to develop any C# application...whether for Windows, the web, or mobile devices.
-
Message Queuing with RabbitMQ Succinctly
Last updated: Tuesday, February 19, 2019
Published in: Book Excerpts, Newsletters
In this book, we will look at a popular integration platform called RabbitMQ. RabbitMQ is a powerful message broker and queuing system that allows you to integrate systems together so that they are robust, reliable, and can scale with your business. We will focus on .NET and C# in this book but RabbitMQ is a cross-platform system with client libraries for most popular development platforms. This makes RabbitMQ a compelling solution for integrating systems developed in any number of languages and platforms.
-
More Effective C#: 50 Specific Ways to Improve Your C# - Chapter 5 - Working with LINQ
Last updated: Wednesday, February 20, 2019
Published in: Book Excerpts
The driving force behind the language enhancements to C# 3.0 was LINQ. The new features and the implementation of those features were driven by the need to support deferred queries, translate queries into SQL to support LINQ to SQL, and add a unifying syntax to the various data stores. Chapter 4 shows you how the new language features can be used for many development idioms in addition to data query. This chapter concentrates on using those new features for querying data, regardless of source.
-
Murach's C# 2012 - Chapter 2
Last updated: Tuesday, February 19, 2019
Published in: Book Excerpts
by Joel Murach and Anne Boehm, Published May 2013, ISBN 978-1-890774-72-1 http://www.murach.com/books/cs12/index.htm
-
Objects - Chapter 1
Last updated: Saturday, January 18, 2020
Published in: Book Excerpts
“This excerpt is from the book, ‘Windows 7 Device Driver’ by Ronald D. Reeves, Published Nov 16, 2010 by Addison-Wesley Professional. Part of theAddison-Wesley Microsoft Technology Series series.l, ISBN 139780321670212, Copyright 2011. For more info please visit the publisher site: http://www.informit.com/title/0321670213
-
The C# Programming Language - Chapter 7
Last updated: Saturday, January 18, 2020
Published in: Book Excerpts
-
Visual Studio Unleashed - Chapter 2 - The Visual Studio IDE
Last updated: Saturday, January 18, 2020
Published in: Book Excerpts
This excerpt is from the new book, ‘Microsoft Visual Studio 2010 Unleashed’, authored by Mike Snell and Lars Powers, published in the Sams Unleashed Series, August 2010, ISBN 0672330814, Copyright 2010. For more info, please visit the publisher site http://www.informit.com/store/product.aspx?isbn=0672330814
-
Windows 8.1 Apps with XAML and C#: Arranging UI Elements
Last updated: Thursday, February 21, 2019
Published in: Book Excerpts, Newsletters
The sizing and positioning of elements is called layout. Within the parent/child relationship between elements, this chapter focuses on the children, examining the common ways that you can control layout on a child-by-child basis.
-
The Missing LINQ
Last updated: Wednesday, August 10, 2022
Published in: CODE Focus Magazine: 2007 - Vol. 4 - Issue 1 - Sedna: Beyond Visual FoxPro 9, VFP Conversion Papers, Markus Egger Talks Tech
Visual FoxPro’s (VFP) Data Manipulation Language (DML) is one of VFP’s most compelling features. It is also the most obvious feature VFP developers miss in .NET languages such as C# and Visual Basic. However, Language Integrated Query (LINQ), a new query language for .NET developers is a new feature in the upcoming releases of C# 3.and Visual Basic 9.0 that addresses these shortcomings.
-
The Baker’s Dozen: 13 Productivity Tips for Generating PowerPoint Presentations
Last updated: Saturday, January 18, 2020
Published in: CODE Magazine: 2006 - November/December
This installment of “The Baker’s Dozen” finds the Baker expanding from pastries to eye candy: generating PowerPoint output. Many power users build presentations using data from Excel or other data sources. This article shows how to automate Microsoft PowerPoint 2003 from within a Visual Studio 2005 application. The article presents a class called GenPPT, which creates several different types of slides, including slides that integrate tables and charts. GenPPT is written in Visual Basic 2005, and the demo program that calls it is written in C#: this demonstrates using multiple .NET languages in a solution.
-
.NET Data Access with LINQ: A VFP Perspective
Last updated: Tuesday, February 19, 2019
Published in: VFP Conversion Papers, Markus Egger Talks Tech, LINQExperts.com Papers
For Visual FoxPro developers, data access represents the daily bread and butter. Data access is a core feature of Visual FoxPro (which after all is an xBase descendent) and nobody gives much thought to the ability to run a select-statement right within a VFP program.Most languages however (including .NET languages such as C# or Visual Basic .NET) are not as data centric and thus do not support data manipulation as a core language concept. At least until now. But all this is about to change with the introduction of LINQ.
-
LINQ
Last updated: Tuesday, February 19, 2019
Published in: CODE Magazine: 2006 - March/April, Markus Egger Talks Tech, VFP Conversion Papers
At PDC 2005, Microsoft introduced brand new technology known as LINQ, which stands for “Language Integrated Query.”The feature-set hiding behind this acronym is truly mind-boggling and worthy of a lot of attention. In short, LINQ introduces a query language similar to SQL Server’s T-SQL, in C# and VB.NET. Imagine that you could issue something like a “select * from customers” statement within C# or VB.NET. This sounds somewhat intriguing, but it doesn’t begin to communicate the power of LINQ.
-
LINQx
Last updated: Monday, May 8, 2023
Published in: CODE Magazine: 2005 - November/December, VFP Conversion Papers
Microsoft demonstrated a new technology at PDC called LINQ (Language Integrated Query). The following note from Alan Griver, a member of the LINQ team at Microsoft, offers some details related to the LINQ project. In future issues of CoDe Magazine we will have more details on LINQ.Microsoft demonstrated a new technology at PDC called LINQ (Language Integrated Query). The following note from Alan Griver, a member of the LINQ team at Microsoft, offers some details related to the LINQ project. In future issues of CoDe Magazine we will have more details on LINQ.
-
.Finalize(): Seek and Ye Shall Find: AutoComplete in Windows Forms 2.0
Last updated: Wednesday, February 20, 2019
Published in: CODE Magazine: 2005 - September/October
Finalize Column Sept/Oct 2005 Ken Getz
-
Ask the Doc Detective
Last updated: Wednesday, February 20, 2019
Published in: CODE Magazine: 2005 - July/August
Doc Detective - July/August 05
-
Sorting Custom Collections
Last updated: Wednesday, August 31, 2022
Published in: CODE Magazine: 2005 - January/February
Have you ever wanted to use a strongly-typed collection to bind your data presentation controls to, only to find that you have very limited sorting capabilities, if any at all?If you are trying to stick to good object-oriented design and shrink the amount of data that you keep in memory, transfer from your data source, or serialize to clients, you likely have run into this situation because you are using strongly-typed collections of your domain objects. So what do you do if you need to sort those collections for presentation or faster searching?
-
Sorting Objectively
Last updated: Wednesday, February 20, 2019
Published in: CODE Magazine: 2005 - January/February
Jonathan Goodyear (the Angry Coder) January/Febuary 2005
-
'For-Each' Of My Own
Last updated: Tuesday, February 19, 2019
Published in: CODE Magazine: 2004 - September/October
The .NET Framework provides many new collection classes that you can iterate (for-each) through.But did you know that you can also iterate through values in any of your classes, not just those that use or inherit from collections?
-
Building a Better Configuration Settings Class
Last updated: Tuesday, February 19, 2019
Published in: CODE Magazine: 2004 - July/August
Configuration settings make it possible for users and administrators to configure an application before it is run for the first time and while it runs..NET provides a good rudimentary mechanism for storing and retrieving configuration settings in the application's .config file with the ConfigurationSettings class, but this mechanism is missing a number of essential features. This article describes how to improve on the base functionality using a class that provides strong typing, allows for writing of keys, and provides optional encryption of keys.
-
Overload Operators to Operate on Your Objects
Last updated: Tuesday, February 19, 2019
Published in: CODE Magazine: 2004 - July/August
Operator overloading provides an intuitive way to support mathematical and comparative operations on your objects.Operator overloading is one of those features that you don't need very often, but when you need it, operator overloading is very nice to have. You will find operator overloading in C# now, but you won't find it in Visual Basic until the upcoming Visual Studio 2005 release.
-
A Not-So-Quick Tour of the Web DataGrid Control
Last updated: Wednesday, February 20, 2019
Published in: CODE Magazine: 2003 - March/April, VFP Conversion Papers
Data-bound controls play a key role in the development of ASP.NET applications. Data-driven controls allow you to associate their whole interface, or individual properties, with one or more columns of a .NET-compliant data source. In this article, I'll delve into the depths of an extremely versatile data-bound control that is a fixed resence in any real-world ASP.NET application - the DataGrid control. I'll focus on the key programming aspects of the control, including data binding, column mapping, paging, and sorting.
-
C-Sharpest
Last updated: Tuesday, February 19, 2019
Published in: Publisher's Point, Markus Egger Talks Tech, VFP Conversion Papers
C# 2.0 just shipped with a number of interesting new features: anonymous methods, nullable objects, iterators, partial classes, generics, and others. But the innovation does not stop there! Microsoft (and Anders Hejlsberg in particular) have already allowed us a sneak peek at some of the new features that will be available in C# 3.0.
-
Getting Started with ASP.NET
Last updated: Wednesday, August 31, 2022
Published in: CODE Magazine: 2003 - March/April, VFP Conversion Papers
ASP.NET represents a significant leap forward from traditional Active Server Pages (ASP) development. In this article, I'll show you what it takes to begin building ASP.NET Websites with Visual Studio .NET. This article will provide you with the knowledge you need to jumpstart your foray into the world of ASP.NET development.
-
Great Reasons to Ring In 2005!
Last updated: Tuesday, November 15, 2022
Published in: Publisher's Point, VFP Conversion Papers, Markus Egger Talks Tech
Wow, another year has gone by, and as you read this, you are probably returning to the office after a few more or less relaxing holiday time spent with friends and family and a New Year's celebration. Interesting things have happened in our industry in the last 12 months, but I predict that the next 12 months will be quite a bit more interesting! Seldom before have I been as excited about new technologies and developments as I am now.
-
LINQ Up!
Last updated: Tuesday, February 19, 2019
Published in: Publisher's Point, Markus Egger Talks Tech, VFP Conversion Papers
At PDC 2005, Microsoft announced a new technology called Language Integrated Query (LINQ), which will be available with Visual Studio “Orcas” (the next version of Visual Studio). A lot of exciting new technologies are announced at every PDC, and as a result, LINQ got some attention, but not nearly as much as I think it deserves. LINQ represents the ability to run queries right inside of Visual Basic, C#, or any other .NET language.
-
What's New in Visual Studio .NET 1.1?
Last updated: Thursday, February 21, 2019
Published in: CODE Magazine: 2003 - March/April, VFP Conversion Papers
Visual Studio .NET provides a new set of features designed to improve and enhance the development experience. Most of these changes have to do with user ergonomics and are typical of a minor release of a Visual Studio product. Only a few of the changes are related to the underlying platform. This article assumes you are familiar with Visual Studio .NET 1.0 and it presents only the new features of the IDE (Integrated Development Environment) of Visual Studio .NET 1.1, for both C# and Visual Basic .NET. J# is not discussed because it was not part of Visual Studio .NET 1.0. In the interest of space, some minor cosmetic changes (such as reorganization of the Start page) are not listed.
-
Async-Up Your Objects
Last updated: Tuesday, February 19, 2019
Published in: CODE Magazine: 2004 - May/June
Encapsulate asynchronous functionality directly into your business objects.The .NET Framework facilitates calling object methods asynchronously through the use of delegates. You may already know how to do this using helper code, but there is a cleaner and much cooler way of packaging this kind of functionality right inside your business objects.
-
Behold WSE 2.0: Removing Another Layer of WS-Pain
Last updated: Tuesday, February 19, 2019
Published in: CODE Magazine: 2004 - May/June
The official release of Microsoft's Web Services Enhancements (WSE) toolkit promises to help developers deal with at least some of the pain and suffering accompanying the emerging Web services' standards.Updated to support the OASIS WS-Security specification and a promising WS-Policy specification, developers will be able to build standards-compliant Web services in less time and with less code.
-
Use Generics to Create an Audit Trail
Last updated: Tuesday, February 19, 2019
Published in: CODE Magazine: 2004 - May/June
Building an audit trail into your application provides a mechanism for tracking who updated what when, and the new generics feature in Whidbey helps you build that trail.The Whidbey release of .NET will include a new Common Language Runtime (CLR) feature called generics. Generics allow you to use a variable to represent a desired data type, and thereby create very generic code (hence the name) that works with any data type.You define the data type for the generic variable at run time and the CLR substitutes that data type for the variable everywhere in the code that it is used; basically providing you with strongly typed generic code.
-
Asynchronous Windows Forms Programming
Last updated: Tuesday, February 19, 2019
Published in: CODE Magazine: 2004 - March/April
Windows Forms applications often require some sort of asynchronous invocation option.You rarely want to block the user interface while a lengthy operation executes in the background. Windows Forms pose a set of complicated design and implementation issues when it comes to asynchronous method invocation and multithreading due to the underlying Windows messages processing. Although .NET does provide a uniform asynchronous invocation mechanism (described in my article, "Asynchronous .NET Programming", CoDe Magazine, May 2003) you cannot apply it as-is in a Windows Forms application. To address this problem, the next version of .NET (version 2.0, code-name Whidbey) provides a new component designed to ease the task of developing asynchronous Windows Forms applications. This article starts by describing the current asynchronous programming model available to Windows Forms developers. Then, not only does this article describe the Whidbey solution, it also provides a .NET 1.1 implementation of the solution so that you can take advantage of this superior programming model today and ease the transition into Windows Forms 2.0 in the future.
-
Give Your Forms a Base
Last updated: Wednesday, February 20, 2019
Published in: CODE Magazine: 2004 - March/April
Create a base form class to ensure that all of the forms in your application behave consistently. This technique minimizes the amount of repetitive code you need to write to manage the user's interaction with your forms.
-
Integrating the Google Web Service Into ASP.NET
Last updated: Wednesday, August 31, 2022
Published in: CODE Magazine: 2004 - March/April
Google now offers the functionality of its search engine through a Web service.Over the past couple years, Google has become the most popular search engine used on the Web. Building upon its popularity, Google has developed additional search accessories and interfaces for both personal and commercial use. The most powerful interface offered by Google is exposure of its database and search capabilities through the use of a Web service.
-
An Introduction to Visual Studio .NET Whidbey
Last updated: Tuesday, August 9, 2022
Published in: CODE Magazine: 2004 - January/February, CODE Focus Magazine: 2003 - Vol. 1 - Issue 3 - Whidbey and Yukon PDC Special
When I was asked to write a few pages on what's coming in the next version of Microsoft Visual Studio .NET (code named Whidbey), the biggest issue I had was how to limit this article to a few pages.I opted to list a few categories and drill down into each. I'm not going to cover everything, just some key items in each area. Please note that not all of these changes are implemented in the PDC build that attendees are receiving, and that some of these features are still in the planning stages. That said, here are the categories that I'd like to discuss:
-
C# 2.0 Code Refactoring
Last updated: Tuesday, February 19, 2019
Published in: CODE Magazine: 2004 - January/February
The next version of C# will feature a code refactoring engine built into the Visual Studio environment.A term coined by Martin Fowler, code refactoring allows you to change the code structure without changing or affecting what the code itself actually does. For example, changing a variable name or packaging a few lines of code into a method are code refactoring. The main difference between C# 2.0 refactoring and a mere edit or find-and-replace is that you can harness the intelligence of the compiler to distinguish between code and comments, and so on. This article provides a preview of Visual C# 2.0 code refactoring, to be released with the next version of Visual Studio .NET, code-name Whidbey.
-
Creating Skinned Controls for ASP.NET
Last updated: Wednesday, August 31, 2022
Published in: CODE Magazine: 2004 - January/February
Skinned controls make a user interface very flexible.With skinned controls, the functionality and the presentation of a server control are effectively separated, making it very easy to change the presentation of the control. If used properly, you can use skinned controls to change the look of an entire Web site by just selecting a separate set of skins.
-
Three Cool New Features in C#
Last updated: Wednesday, November 30, 2022
Published in: CODE Magazine: 2004 - January/February, CODE Focus Magazine: 2003 - Vol. 1 - Issue 3 - Whidbey and Yukon PDC Special, Markus Egger Talks Tech
C# has always had a reputation as a clean language with lots of innovation.The Whidbey-release of Visual Studio .NET ships with a new version of the C# compiler that has a number of great new features. Some of them will be implemented as generic runtime features that will show up in other languages as well, and some are truly C#-specific. All of them originated in the C# camp. In this article, I will shed some light on my three favorite new features.
-
Creating Tablet PC Applications with VS .NET
Last updated: Tuesday, February 19, 2019
Published in: CODE Magazine: 2003 - September/October, Markus Egger Talks Tech
In the Fall of 2002, Microsoft introduced Tablet PCs based on the popular Windows XP operating system.By default, this new platform includes applications with special Tablet PC features enabled, such as Ink Input and Pen-based operation. In order for this platform to become truly popular, third-party vendors will also have to ink-enable their applications. Luckily, this is a pretty straightforward task.
-
Pest Control
Last updated: Tuesday, February 19, 2019
Published in: Publisher's Point, Markus Egger Talks Tech
Brian Kernighan [1] once said, "Debugging is twice as hard as writing code in the first place. Therefore, if you write the code as cleverly as possible, you are, by definition, not smart enough to debug it." This quote gets a little giggle out of most developers, but on the serious side, there is a lot of truth in it. Writing code that does cool or useful things certainly is much easier than writing code that does cool or useful things reliably.
-
Shaped .NET Windows Forms
Last updated: Tuesday, February 19, 2019
Published in: CODE Magazine: 2003 - January/February, Markus Egger Talks Tech
Since the earliest versions of the Windows operating system, all Windows have been rectangular.However, the number of applications that break out of this boring mold is rising. Even Microsoft, the king of rectangularity, is starting to create applications that use shaped windows, such as Media Player. Unfortunately, creating shaped forms has always been quite tricky. Until now that is! The .NET Framework and the Windows Forms package in particular make it easy to produce forms that have rather sophisticated shapes.
-
The Basics of GDI
Last updated: Friday, July 2, 2021
Published in: CODE Magazine: 2003 - May/June, Markus Egger Talks Tech
In graphical user interfaces such as Microsoft Windows, drawing on the screen is an important task.Everything displayed on the screen is based on simple drawing operations. Often, environments such as Visual Basic abstract those drawing operations away from the developer. However, the same drawing operations still take place under the hood. In Visual Studio .NET, developers have easy access to that drawing functionality whenever they need it through a technology called GDI+. Using GDI+, developers can easily perform drawing operations such as generating graphs or building custom controls.
-
Threading Support in the .NET Framework
Last updated: Tuesday, February 19, 2019
Published in: CODE Magazine: 2002 - November/December, Markus Egger Talks Tech
This article explains in depth how to implement multi-threading in your .NET applications.
-
Using GDI in ASP.NET Web Applications, Part 1
Last updated: Friday, July 2, 2021
Published in: CODE Magazine: 2003 - May/June, Markus Egger Talks Tech
GDI+ is a technology that developers generally associate with Windows Forms applications because they use it to draw anything on the screen from custom controls to diagrams.However, you can also use GDI+ in ASP.NET Web applications whenever you want to serve up dynamic images. You can use GDI+ to create dynamic banners, photo albums, graphs, diagrams, and more.
-
Creating ASP.NET Custom Controls with Style
Last updated: Tuesday, February 19, 2019
Published in: CODE Magazine: 2003 - September/October
Having a custom control display properly is a challenge in itself.Getting your custom control to behave the way you want it to is only half the work. Once you get to the visual side of things you have to create the logic that generates the actual HTML shown in the browser. If you want the control to display properly, this can be a tedious task, especially if you want it to render properly in different browsers.
-
Five ASP.NET Controls You Might Be Craving
Last updated: Wednesday, February 20, 2019
Published in: CODE Magazine: 2003 - September/October
ASP.NET is a terrific platform for Web applications.That does not mean that tricky coding is always one or two clicks away within a dockable and resizable Visual Studio .NET dialog box. Tricky solutions require tricky coding, just the kind of features that a wizard-driven environment and a general-purpose framework can't provide. In this article, we'll tackle five ASP.NET features that require wicked and creative code.
-
Working with .NET Threads
Last updated: Tuesday, February 19, 2019
Published in: CODE Magazine: 2003 - September/October
The .NET class Thread defined in the System.Threading namespace represents a managed thread.The Thread class provides various methods and properties to control the managed thread. Unfortunately, there is a significant potential for abusing these mechanisms, and most developers may not even realize they are doing anything wrong. This article describes the dos and don'ts of the Thread class, and then presents a wrapper class that simplifies starting a thread, correctly terminates a thread, and offers a more consistent class interface than that of the raw Thread class.
-
.NET Web Services Security
Last updated: Tuesday, February 19, 2019
Published in: CODE Magazine: 2003 - July/August
Web services are all about connecting businesses in a standard and secure manner.For a real-life Web service, security is intrinsic to every facet of operation and no party would ever agree to interact with a non-secure Web service. Unfortunately, Web services security is still in its infancy; standards such as WS-I are just emerging and there is no built-in support in the development tools for them. That being said, there are quite a few programming techniques you can use today in .NET 1.1 to secure your Web services, and do so in a way that will ease the transition to future standards and protocols.
-
Cryptography the .NET Way
Last updated: Tuesday, February 19, 2019
Published in: CODE Magazine: 2003 - July/August
In real-world applications you just can't do without encryption.The problem with cryptography, though, is that sometimes it may make you use an overly complex API. The .NET Framework classes for cryptography don't require you to become an expert mathematician or a cryptography guru. In the .NET Framework you'll find symmetric and asymmetric cryptographic providers as well as hash providers. Some of these provider classes end up calling into the unmanaged CryptoAPI library while other parts of the .NET cryptography solution are purely managed code.
-
Defining and Using Custom Attribute Classes in C#
Last updated: Wednesday, August 31, 2022
Published in: CODE Magazine: 2003 - July/August
The complex, component-style development that businesses expect out of modern software developers requires greater design flexibility than the design methodologies of the past. Microsoft's .NET Framework makes extensive use of attributes to provide added functionality through what is known as "declarative" programming. Attributes enhance flexibility in software systems because they promote loose coupling of functionality. Because you can create your own custom attribute classes and then act upon them, you can leverage the loose coupling power of attributes for your own purposes.
-
Asynchronous Calls in .NET
Last updated: Tuesday, February 19, 2019
Published in: CODE Magazine: 2003 - May/June
When you make a method call on an object, typically you must block the client while the object executes the call, and control returns to the client only when the method completes execution and returns.However, there are quite a few cases where you want to call methods asynchronously?that is, you want control to return immediately to the client while the object executes the called method in the background, and then somehow let the client know when the method execution is completed. Such an execution mode is called asynchronous method invocation and the action is an asynchronous call. Asynchronous calls allow you to improve availability, increase throughput and performance, and make your applications more scalable.
-
Dynamically Adding Wired Controls to Web Forms
Last updated: Wednesday, August 31, 2022
Published in: CODE Magazine: 2003 - May/June
The task of creating dynamic ASP.NET Web Forms whose behavior is based upon user interaction and depends upon the purpose and intended goal of the Web Form.Web Forms that require only controls and functionality provided by the built-in ASP.NET Web server controls are easy to create. But creating Web Forms that require or are designed with extended controls and functionality can be a challenge.
-
GDI+ Drawing Page, Part 1
Last updated: Wednesday, April 14, 2021
Published in: CODE Magazine: 2003 - May/June
There was a time, not too long ago, when browser-based user interfaces were considered both the status quo and the Next Great Thing.The demand for Windows Forms-based applications started to dwindle as the developer community fully embraced browser/server applications with their centralized server components and ubiquitous user interfaces. .NET, however, brings a much more powerful library of distributed communication technologies (such as Web services and remoting). As a result, .NET developers are seeing some of these traditionally browser-based applications becoming, more simply, Web-enabled and less tied to a browser. In short, developers can now see a very real business case for building distributed applications on Windows Forms technology.
-
The .NET File System Object Model
Last updated: Tuesday, February 19, 2019
Published in: CODE Magazine: 2003 - May/June
The .NET Framework doesn't change the structure of the file system, nor does it build a new layer on top of it.More simply, but also more effectively for developers, it supplies a new object model for file system-related operations. A managed application can work with files and directories using high-level methods rather than low level understanding of the file system. This article provides an overview of methods and classes contained in the System.IO namespace.
-
XQuery, the Query Language of the Future
Last updated: Wednesday, August 31, 2022
Published in: CODE Magazine: 2003 - May/June
XQuery will likely become the dominant language for querying data from most data sources.Although designed for querying XML data, you can use XQuery to tie together data from multiple data sources. In that respect it is much more powerful than SQL, which will slowly but surely be replaced as the main query language.
-
Using the ASP.NET Runtime to Extend Desktop Applications with HTML Scripts
Last updated: Tuesday, February 19, 2019
Published in: CODE Magazine: 2003 - March/April
People often think of HTML as the sole domain for Web applications.But HTML's versatile display attributes are also very useful for handling data display of all sorts in desktop applications. The Visual Studio .NET start page is a good example. Coupled with a scripting/template mechanism you can build highly extendable applications that would be very difficult to build using standard Windows controls. In this article, Rick introduces how to host the ASP.NET runtime in desktop applications and utilize this technology in a completely client-side application using the Web Browser control.
-
Dynamically Executing Code in .NET
Last updated: Tuesday, February 19, 2019
Published in: CODE Magazine: 2002 - November/December
This article demonstrates the techniques for compiling dynamic code in your .NET applications.
-
C#: Why Do We Need Another Language?
Last updated: Tuesday, August 30, 2022
Published in: CODE Magazine: 2002 - September/October
New computer languages are rare and successful ones are rarer still, yet Microsoft decided to create a new language to go along with the .NET Developer Platform. Why weren't existing languages good enough?
-
.NET Interface-based Programming
Last updated: Tuesday, February 19, 2019
Published in: CODE Magazine: 2002 - May/June
In component-based programming, the basic unit of use in an application is a binary-compatible interface.The interface provides an abstract service definition between the client and the object. This is in contrast to the object-oriented view of the world that places the object implementing the interface at the center. An interface is a logical grouping of method definitions that acts as the contract between the client and the service provider. Each provider is free to provide its own interpretation of the interface and its own implementation. To use a component, the client only needs to know the interface definition and have a binary component that implements that interface. This extra level of indirection between the client and the object provides for interchangeability between different implementations of the same interface, without affecting client code.
-
Retrieving HTTP content in .NET
Last updated: Tuesday, February 19, 2019
Published in: CODE Magazine: 2002 - May/June
HTTP content retrieval is an important component for applications these days.Although .NET reduces the need to explicitly retrieve content from the Web through built-in mechanisms in the Web Services framework, ADO.NET and the XML classes, there are still many needs to retrieve Web content directly and manipulate it as text or data downloaded into files. In this article, I will describe the functionality of the HttpWebRequest and HttpWebResponse classes and provide an easy to use wrapper class. The class simplifies the HTTP access and provides most of the common features in a single interface while still providing full access to the base functionality of the HttpWebRequest class. In the process, I will describe some sticky issues like string encoding and Cookie handling and some related topics like implementing events and running multiple threads to service Web requests.
-
Custom .NET Windows Forms Controls
Last updated: Friday, October 28, 2022
Published in: CODE Magazine: 2002 - January/February
The .Net framework provides two base classes for controls; one for Windows forms and the other for ASP.NET server controls.We can extend the existing controls by adding specific functionality to them or develop our own controls from scratch. Such controls are called custom controls. We can also group controls together and create another control, such as an address box, that contains couple of textboxes and labels. Controls that are grouped together and are based on System.Winforms.UserControl are called user controls. This article explains the process of creating a user control and demonstrates how we can extend the functionality of the framework's DateTimePicker control.
-
XML to Database using .NET's XmlTextReader
Last updated: Wednesday, February 20, 2019
Published in: CODE Magazine: 2002 - January/February
As XML becomes more and more prolific in the world of data exchange it's increasingly important that data can be quickly and easily extracted from XML documents and moved into more permanent data stores.Although .NET offers several different ways for performing this task, the XmlTextReader represents the most efficient and scalable solution.
-
Building Data Access Components in C#
Last updated: Wednesday, November 30, 2022
Published in: CODE Magazine: 2001 - Issue 1
With the functionality provided by the .NET runtime, building data access components with C# (pronounced "c-sharp") is not difficult.In this article, we discuss how to access data stored in a SQL Server database. We will then review the steps necessary to build a Dynamic Link Library and an Executable file in C# to query a table and display the results.