C# Corner

Resources  
  • Chat Server and Client in C# Using Remoting TechnologyFeb 16, 2001. This application is a simple Chat server and Client, which is conversion of Java RMI chat server and client. The Java client was a Applet and present application client in Windows Forms.
  • Simple SMTP MailerMar 26, 2001. This is a simple program which shows how to send mail via SMTP without using any framework support. While using the .NET SMTP classes may be a little easier, it is good to be able to go under the hood and get your hands dirty to understand what is going on at the socket level. For simple text messages, this implementation works fine.
  • Writing Secure Code using C#Apr 06, 2001. Code access security is a mechanism that grants/denies access to resources within a method call. For example, code written by a person may be allowed to write to the disk while code from another one may be forbidden from accessing the disk. This control can be enforced even if the code written by both of them is used within a single application
  • Protecting IL Code from unauthorised DisassemblingApr 09, 2001. Microsoft .NET proved a mechanism where the code written in VB.NET, C# or any CLS compliant languages to generate MSIL (Microsoft Intermediate Language)code which targets the CLR and executes. This is an excellent mechanism to abstract the high level code from the underlying hardware.
  • File Merger and Splitter in C#Apr 10, 2001. This program can break up a large file into several files AND merge those files back into one single large file.
  • Control Statemenats - Part 1Jun 01, 2001. This lesson shows how to use c# control statements, and the difference between these controls in C++/ JAVA and c#. Sample includes single selection, if-else, and multi case ..
  • Exception HandlingJun 12, 2001. Exceptions in C# provide a structured, and type-safe way of handling both system level and application level error conditions. The exception mechanism in C# is very similar to that of C++, with a few important differences.
  • Exception HandlingJul 21, 2001. Exceptions in C# provide a structured, and type-safe way of handling both system level and application level error conditions. The exception mechanism in C# is very similar to that of C++, with a few important differences.
  • Post in Mobile FormsJul 27, 2001. Till now whatever we are doing is in single page and the traversing between forms take place only in a single Page. If you Remember Something of WML there our most effective funda is posting from one form to other.
  • Messaging between Threads using Message LoopAug 20, 2001. MessageLoopLib is a stripped down version of a complete, threading communication subsystem Ive written. This implementation is a single thread created in the GUI constructor. Ive dropped all thread management and have had to change some of the message code to accommodate this.
  • Multiple Inheritance in C#Aug 29, 2001. Can you inherit from multiple classes in C#? Simply put, this cannot be done. However there are ways around it. From a design perspective you must ask yourself, will a Class fully represent an object?
  • Visual Inheritance in C#-Part1Sep 24, 2001. We all know that Inheritance means a extending a class with more Features without worrying about the implementation of features of hidden inside the class to be inherited.
  • Visual Inheritance Part 2 Sep 26, 2001. We all know that Inheritance means a extending a class with more Features without worrying about the implementation of features of hidden inside the class to be inherited.
  • Encapsulation in C#Oct 12, 2001. In Object Oriented programming Encapsulation is the first pace. Encapsulation is the procedure of covering up of data and functions into a single unit (called class).
  • Understanding Properties in C#Oct 15, 2001. In C#, properties are nothing but natural extension of data fields. They are usually known as 'smart fields' in C# community.
  • Inheritance and PolymorphismOct 29, 2001. By using the concept of inheritance, it is possible to create a new class from an existing one and add new features to it.
  • FlashCards Language Program : How to read and save Images in a Sql Server Database using ADO.NETNov 09, 2001. I thought it would be fun to write a simple program that displayed flashcards from a database and at the same time, show you how to read and write images to the database. This program is a simple flashcard program that talks to a single table in a Sql Server Database.
  • Operator Overloading in C#Dec 03, 2001. All unary and binary operators have pre-defined implementations, that are automatically available in any expressions. In addition to this pre-defined implementations, user defined implementations can also be introduced in C#.
  • Creating a Custom Data AdapterDec 03, 2001. A good programmer needs to know how to work with ADO.NET DataAdapters at the code level.
  • Microscopic Discussion in ClassesJan 02, 2002. This article is going to take a microscopic view of classes, in terms of Inheritance(I) , Multiple Inheritance(MI) and Circular Base Classes (CBC).
  • Some situtions where one may like to use ILJan 29, 2002. This article requires knowledge of IL or at least desire to learn it. My intention is to give few illustrations where usage of IL is possible or only option.
  • FlashCards Language Program : How to read and save Images in a Sql Server Database using ADO.NETFeb 19, 2002. I thought it would be fun to write a simple program that displayed flashcards from a database and at the same time, show you how to read and write images to the database. This program is a simple flashcard program that talks to a single table in a Sql Server Database.
  • .NET COM Interoperability - Part 1: Using COM Components from .NET FrameworkApr 02, 2002. The DotNet framework exposes COM objects through a proxy called the runtime callable wrapper (RCW). The primary function of RCW is to marshal call between a managed client (.Net) and unmanaged COM object. The runtime maintains a single RCW for each COM object.
  • Space Breakout - 2D Game Developed using DirectX and C#Apr 11, 2002. GDI+ is a feature rich graphics API that makes sophisticated graphical effects highly accessible to the C# developers. Unfortunately if youve tried to develop smooth detailed animation using GDI+ you have undoubtedly discovered that just how slow it can be. Consequently it is not particularly suited to games development, if you want to really take advantage of your 1 gig + processor and that fancy new graphics card youre going to have to get a little more low level and dirty, enter Microsofts DirectX API.
  • WhoIs in ASP.NETApr 15, 2002. Quite often you want to know who owns a particular domain. To obtain the registry information, you go to the respective registry and start a so called WHOIS query (lookup).
  • Customized Windows Forms Look and FeelMay 28, 2002. I have encountered instances when I needed a high level look and feel of Windows Forms and controls.
  • Programming C#: Working with Arrays in .NETJul 09, 2002. This article concentrates on arrays in .NET and how you can work with arrays using C# language. Article also covers the Arrays class and its method, which can be used to sort, search, get, and set an array items.
  • Writing a Single Event Handler for Multiple ControlsJul 22, 2002. Writing a Single Event Handler for Multiple Controls by Giuseppe Russo. Jul 22, 2002. I have noticed that in many articles, I read, people use a longer method of clearing many textboxes, as well as handling more than one control at the same time.
  • Implementing Inheritance in C#Sep 05, 2002. Inheritance is one of the most important characteristic of OOP. In this article, I will explain how to implement the inheritance in C# by explaining through an example.
  • Single Instance Control ComponentSep 23, 2002. This article is on a single Instance control component which checks whether any instance of your application is running on the System.
  • COBOL and .NET Data TypesSep 24, 2002. .NET has created a new, level playing field for a multitude of programming languages to interact on a scale never before seen.
  • MDX Query BuliderNov 11, 2002. In this article we will be developing a MDX Query Builder.This is similar to the MDX sample application operations, which carry out the transfer of blocks from the secondary memory to the main memory and vice versa.
  • Synchronized Threading in .NETDec 11, 2002. Threads are a powerful abstraction for allowing parallelized operations: graphical updates can happen while another thread is performing computations, two threads can handle two simultaneous network requests from a single process, and the list goes on. Since threads are pretty simple to understand, conceptually, but, practically, they are a cause for programmatic headaches, I decided to write this program to describe how to make use of threads.
  • Concurrency Control in ADO.NET using Threads and MonitorsDec 31, 2002. The concurrency controls system refers to the lowest level in architecture of a DBMS. It is relative to the input/output operations, which carry out the transfer of blocks from the secondary memory to the main memory and vice versa.
  • Filling out your 1040EZ Tax Form in .NETJan 21, 2003. Since the 1040EZ form is only a single page, I thought it would be fun to create a Window Form application that helped into the form. This program will allow you to fill out most of the fields and perform the calculations on certain fields as well.
  • Possible Usage of Visitor and Type CastsFeb 25, 2003. In this article I will try to introduce Visitor pattern and one possible variation on it. It treats problems related to projects projects where high level of adaptability is needed.
  • Use Thread Local Storage to Pass Thread Specific DataMar 18, 2003. The specific thread level storage is known as thread local storage or TLS for short. The .NET threading namespace allows .NET developers to use TLS from within their multi-threaded applications to store data that is unique to each thread.
  • Implementing Caching in ASP.NetJun 10, 2003. This article explains the concepts, advantages and types of caching and the implementation of caching in ASP.NET applications.
  • May Reflection be with you, alwaysJul 02, 2003. So let me present the example where we can use Reflection and Reflection.Emit to do something interesting.
  • May Reflection be With you AlwaysJul 02, 2003. So let me present the example where we can use Reflection and Reflection.Emit to do something interesting.
  • Lengthy Operations on Single Thread in .NET ApplicationsJul 08, 2003. In this article I discuss how the lenghty operations can be handled in a .NET application. I also discuss how the stack trace can be examined to find any specific methods.
  • Building a Navigation System in ASP.NETJul 16, 2003. This article shows you how to display single record per page and navigate through single record using ASP.NET.
  • Events Programming in C# Nov 24, 2003. In this article, author discusses the events model in .NET and how to implement events in your applications using C#.
  • Migrating COM/DCOM Applications in Microsoft .NET FrameworkDec 09, 2003. In the current Internet scenario, various classic applications run on multiple networks. These applications could have been written using different languages like Visual Basic, Visual C++. For example, a retail organization would have different systems, such as an inventory management system, a bill of material systems, and a general ledger system, all implemented using various technologies available for application development. These systems need to be integrated to form a higher-level enterprise information system for an organization.
  • Working with Windows TabControl with C#Dec 16, 2003. Windows TabControl is a useful control that allows you display multiple dialogs tabs on a single form by switching between the tabs. In this tutorial, I will explain how to create and use a TabControl in your Windows applications with C#.
  • Object Oriented Concepts in C#Dec 24, 2003. In this article we will discuss key concepts of object orientation with their practical implementation in C#. We will discuss here basics of OOPS including Interfaces, Access Modifiers, inheritance, polymorphism etc.
  • QuickModeler 2.0 : A Reverse Engineering Tool for Visual Studio .NETJan 08, 2004. QuickModeler is an Add-In for Visual Studio .NET which provides reverse engineering and easy UML modeling functionality to the development environment. It comprises features like autolayout, inheritance and association modeling, cross language modeling, grid, clipboard, etc.
  • Hello World in different StylesJan 09, 2004. I've attempted to write the traditional 'Hello World' in different styles. This explores the different possibilities of addressing a problem - 'Hello World' with different features of C# language and .NET framework.
  • XML Messaging in WSE 2.0Jan 15, 2004. The WSE is an Add-on to the .NET Framework. It provides additional Web Services support mostly for the various Web Services Architecture (WSA) specifications. This technology represents specific functionalities that will increase the Web Services potentialities.
  • Configuring Publisher Policy FileFeb 20, 2004. Versioning in the Microsoft .NET Framework is managed at the assembly level and is only used when locating strong-named assemblies. By default, the common language runtime loads the assembly whose entire version number matches the version number in the calling assembly's metadata.
  • Report Generation in .NETFeb 27, 2004. Report generation is an integral part of enterprise application development. Choosing the right kind of report generation strategy decides the success of the application in terms of cost and performance. The white paper discusses some of the key factors that need to be considered when architecting reporting systems in .NET and C#.
  • Microsoft Application Center 2000 - An IntroductionMar 17, 2004. Application Center 2000 is Microsoft's deployment and management tool for high-availability Web applications built on the Microsoft Windows 2000 operating system. Application Center 2000 makes managing groups of servers as simple as managing a single computer.
  • Go Beyond the Limits of ASP.NET FormMar 22, 2004. One of the most common hitches that ASP developers encounter when they first approach ASP.NET is that managed Web applications must be written according to a single-form interface model.
  • Combine Multiple Streams in a Single .NET Framework Stream ObjectApr 11, 2004. This article represents a simple Stream class whose data is based on the number of another .NET Framework streams.
  • Advanced File Explorer using C# and Windows FormsApr 12, 2004. The aim is to create an application which (enhanced windows explorer) consists a tree view where someone can see the files available in the existing drives up to certain levels.
  • Constructors In C#May 06, 2004. This article explains constructors in C# with sample examples including constructor overloading, static constructors, and constructor chaining.
  • HTTP Handlers in ASP.NETAug 24, 2004. The low level Request and Response API to service incoming HTTP requests are HTTP Handlers in ASP.NET. All handlers implement the IHttpHandler interface, which is located in the System.Web namespace. Handlers are somewhat analogous to Internet Server Application Programming Interface (ISAPI) extensions.
  • Data Access Layer to execute Stored ProceduresJan 18, 2005. This article explains about executing a single stored procedure or batch of stored procedures from the application layer. As Data access layer completely decoupled from Application layer we just need to change the Application layer in case of any change in underlying database schema.
  • Performance Improvement in ASP.NET Using CachingFeb 01, 2005. ASP.NET provides caching at several levels for you to leverage and improve the responsiveness of your application by storing the page output or application data across HTTP requests and reuse it. This allows the web server to take advantage of processing the request without recreating the information and thus saving time and resources.
  • Building a Web Site using Visual Studio 2005Apr 13, 2005. This article gives you a glimpse of new features of Visual Studio 2005. In this article, you will see the power of Visual Studio and how easy it is to build Web sites using new controls without even writing a single line of code.
  • OOPs Concepts and .NET Part 1: Classes, Objects, and StructuresJun 22, 2005. The following article kicks off a three-part article series that will present definitions and samples for different Object-Oriented Programming concepts and its implementation in .NET. The first part will examine the concepts of classes, objects, and structures. The second part will examine the concepts of inheritance, abstraction, and polymorphism. The third and last part will examine the concepts of interface, multiple interface inheritance, collections, and overloading.
  • OOPS Concepts And .NET Part 2: Inheritance, Abstraction And PolymorphismJun 22, 2005. The following article is the second of a three-part article series that presents definitions and samples for different Object-Oriented Programming (OOP) concepts and its implementation in .NET
  • OOPS Concepts and .NET Part 2: Inheritance, Abstraction, & PolymorphismJun 22, 2005. The following article is the second of a three-part article series that presents definitions and samples for different Object-Oriented Programming (OOP) concepts and its implementation in .NET. The first part examined the concepts of classes, objects, and structures. This part examines the concepts of inheritance, abstraction, and polymorphism. The third and last part will examine the concepts of interface, multiple interface inheritance, collections, and overloading.
  • How to Maintain a CodeGroup in Security Policy at Runtime?Jul 05, 2005. Whenever protected resources are accessed by an assembly, it’s permissions are determined by the code access security system of CLR. Each permission set granted to an assembly is based on the assembly's evidence (such as its URL or publisher certificate, strong name), which in turn is based on configurable security policy.
  • Introduction to ADO.NET 2.0 Data Source ControlsAug 19, 2005. ADO.NET 2.0 provides new data source and data-bound server controls, which allow developers to write full-fledged data-driven applications without writing even a single line of code. This article is an introduction to these new data source controls.
  • Sudoku generating and solving using C# in PocketPC SDKNov 20, 2005. The article is about a program writen in C# to create a simple game application - sudoku. The game can generate several diffculty level sudokus with one solution, solve previously entered puzzles etc.
  • Introduction to new SECS/GEM driver using SecsToTool.NetJan 06, 2006. SecsToTool.Net is a connectivity solution for the semiconductor equipment that support SECS/GEM communication interface. The SecsToTool.Net SECS/GEM driver SDK is designed to provide a high level method call/reply and event driven environment for your host application (or what we normally called Cell Controller/Station Controller/Equipment Manager) to communicate with equipment.
  • C# using the Proxy Pattern to Define RelationshipsJan 23, 2006. I was recently working on a 2.0 Framework project where we had many types of related objects. However, we needed to ensure that there were not multiple instances of the same object in memory. Usually the GOF Proxy pattern is used to hide or control access to an object, but we can also use it to define relationships between objects.
  • Understanding C# Events: What They Are and Where They Came FromJan 30, 2006. To help you get a working knowledge of C# events and event handling, this article explains where events come from, what they really are at a functional level and how they are expressed in C#. This article specifically looks at the Gang Of Four (GOF) Observer pattern.
  • Differentiate Hiding and OverridingFeb 27, 2006. As most of you know hiding and overriding are two main features based upon inheritance, which is one of the pillars of the OOP. Using these we can redefine a member of the base class in a derived class. But what are the differences. Let me clear this with some simple examples.
  • Displaying Single Table Database Hierarchy with DataSet and DataRelationsMar 03, 2006. Hierarchies can be difficult to store SQL tables and even more difficult to query and display. This Example will show you how you can use DataRelation to convert single table hierarchy in to nested XML and then use XSLT to transform it to nested list.
  • Message-level Declarative Security Using WSE 3.0Mar 06, 2006. Web Services Enhancement version 3.0 (WSE 3.0) is a SOAP extension managed API (Microsoft.Web.Services3.dll) compatible with the .Net Framework 2.0. This article explores WSE 3.0 in terms of implementing message-level declarative security to Web services and Web service clients.
  • A Glance at Web Application SecurityMar 07, 2006. Web application security involves implementing protective measures against potential threats, malicious or unintentional, that exploit exposed vulnerabilities. Security is best implemented using the defence-in-depth technique by applying protective measures at network, host, and web application levels. This article will focus on security at the application level by exploring IIS and ASP.net authentication, authorization and secure communication.
  • Merging data into single table from multiple tables (resultsets)May 15, 2006. This article shows how to reduce the number of trips to improve performance by merging data into single table from multiple tables (resultsets).
  • Inheritance Versus InterfacesJul 17, 2006. This article describes the advantages of using interfaces over inheritance and how to create a plug and play component in .NET using an interface.
  • Dynamic Data Grouping using MS Reporting ServicesAug 07, 2006. This article shows to generate multiple outputs from a single physical report template using dynamic data grouping.
  • Generating a Report from Multiple Data Sources in Crystal ReportsOct 23, 2006. If you have to create a report in Crystal Reports from multiple data sources or provide multiple views of the data, you may find sticky situations because CR does not allow you to have multiple Detail sections in a single report.
  • WCF Application Implementing the Anonymous Client over Certificate WS-Security scenarioNov 17, 2006. This article explains the techniques, architecture and design strategies in order to address one of the most common scenarios of secure communication in Internet, the Anonymous client over Certificate WS-Security scenario using the message level security mechanisms.
  • Extending the ASP.NET ImageButton ControlDec 18, 2006. This article describes an easy approach to extending an existing ASP.NET control; in this example, the standard toolkit’s Image Button control is extended to support roll-over effects. Given the standard control already contains existing support for both server side click events and client click events, the control is well furbished prior to the addition of the roll-over effect.
  • TreeView Control in C#Apr 16, 2007. This is an article addressing some of the basics of working with a TreeView control; the article will address dynamically adding TreeNodes to a TreeView control, searching the nodes to find and highlight a single node or a collection of nodes.
  • Compress Folders with C# and SharpZipLibApr 25, 2007. This article shall describe an approach that may be used to collect files from multiple locations and zip them up into a single zipped folder. The code contained in the sample project may be useful if one needs to gather up multiple files, zip them up, and then do something with them such as upload the zipped files to a server location for storage or processing.
  • Spell check enabled RichTextBox custom controlMay 16, 2007. This article describes a quick and simple approach to applying a spell check function to the rich text box control and bundling both features into a single custom control. Of course there is nothing novel or particularly interesting about performing spell checking upon a selection of text using the Word.DLL.
  • MineSweeperJun 05, 2007. Minesweeper is a single-player computer game. The object of the game is to clear an abstract minefield without detonating a mine.
  • To Zip Multiple Files into one zip fileJul 26, 2007. Describing how to zip more than one file into single zip file and how to skip zip file more zipping.
  • Distributed Transaction Coordinator/Control in asp.net (DTC)Jul 31, 2007. A transaction is a series of work perform as a single unit of work consistency and reliability of the system, can be achieved by binding a set of related operations together in a transaction. Here I will be discussing how we can run distributed application in a application.
  • Connection PoolingAug 11, 2007. While performing any database activity it is necessary that every single connection need to be closed, but in case your application throws some exception in that case our connection wont’ get closed. And you will get error “Cannot open connection, it is already open” In this article I will be discussing what is connection pooling? Why connection polling & how we can enable connection pooling etc.
  • Selecting multiple Checkboxes inside multiple GridViewsOct 04, 2007. Ths article describes how to check/ uncheck multiple Checkboxes inside two or more GridViews on same page with Masterpage and usercontrols.
  • Functional Programming in C#: CurryingJan 13, 2008. Currying is a way to re-write a function with multiple arguments in such a way as it can be called as a chain of functions each with a single argument. This article covers using a few simple utility methods you can use to curry your methods.
  • Onchanged Event for Composite User ControlsJan 15, 2008. This article is a tip on how we can use OnChanged events for Windows user controls that inherit from some basis user control.
  • DetailsView Rich Data ControlFeb 01, 2008. DetailsView is a data-bound control that renders a single record at a time from its associated data source.
  • Writing Better Code -- Keepin' it CohesiveFeb 15, 2008. One of the aspects of code quality we can look at is cohesion. If code is highly cohesive it is also much more testable, reusable, readable and maintainable (all the good things in life). Likewise, if code has a low level of cohesion it is often very hard to understand at a glance and difficult to test and maintain. In this article we'll take a look at a concrete example of code that does not follow the Single Responsibility Principle and as a result has low cohesion and walk through the refactoring it takes to modify the code to be more highly cohesive.
  • Writing Better Code - Keepin' it ExtensibleFeb 21, 2008. In a previous article I talked about how to keep code cohesive by applying the Single Responsibility Principle. I wanted to explore part of another principle of software engineering that will help our code be extensible and can handle growth and change.
  • Executing multiple stored procedures within a single transaction context from ADO.NetMar 20, 2008. This article discusses how we can execute multiple stored procedures in ADO.NET with different parameter values in a single Transaction context.
  • Introduction to object oriented programmingMay 09, 2008. This article will provide you an overview about the object-oriented programming main pillars (Encapsulation, Inheritance, and Polymorphism).
  • Multiple Active Result Sets (MARS)May 12, 2008. This article gives you information about the Mars a feature supported by MSSqlServer 2005 and .Net 2.0/3.x, which is a feature to execute more than one query with one single connection to database.
  • The Second Pillar of Object-Oriented Programming - InheritanceMay 22, 2008. In this part of the object-oriented programming series I will introduce the second pillar of object oriented programming (inheritance); you will see how to use inheritance to create classes based on existing classes.
  • The third pillar of object-oriented programming - polymorphism:May 29, 2008. In the last part of this series you will see the third pillar of object-oriented programming (polymorphism); you will see how the polymorphism gives you the ability to treat related objects in the same way.
  • Save TreeView Nodes ExpansionJun 24, 2008. We frequently use an ASP.NET TreeView as a navigation menu. This works well on a single page but if you include the control on a Master Page, it looses its expansion state as you move from one content page to another.
  • Implementing a Custom Zoom Bar with Map SuiteAug 29, 2008. this article I will show you how to build a custom zoom bar using the prebuilt zoom levels defined within Map Suite Web Edition (with concepts that also apply to Map Suite Desktop Edition).
  • Checking previous instance (single instance) of an C# windows application, also setting MDI child form to a MDI parentSep 04, 2008. In this article I will describe how to check previous instance (single instance) of an C# windows application and also whether a MDI child is set to a MDI parent

About single-level-inheritance

NA

SPONSORED BY

Custom Software Development
MCN is your source for developing solutions involving websites, mobile apps, cloud-computing, databases, BI, back-end services and processes and client-server applications.
European SharePoint Conference