C# Corner

Resources  
  • Effective C#: Working with StringsMar 12, 2001. Using string might degrade the performance of your application. This article explains about what precautions you should take when you are going to use strings in your application.
  • 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.
  • 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.
  • Compilation and Runtime Execution of a C-Sharp ProgramApr 10, 2001. C-Sharp (C#) is a strongly typed object-oriented programming language designed to give optimum composition of simplicity, expressiveness and performance.
  • 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.
  • .NET Brings The Fun Back to ProgrammingJul 11, 2001. Today, we are all comfortable sitting in front of our high powered computers running graphical user interfaces and compiling code in sophisticated development environments.
  • 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.
  • Creating a Custom Data AdapterDec 03, 2001. A good programmer needs to know how to work with ADO.NET DataAdapters at the code level.
  • 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.
  • Yahtzee Program Using C#: Part IIJan 31, 2002. This is an update of the Yahtzee program for VS 2005. Included in this version is a Game Reset and a High Score Tracker. The Top Ten High Scores are tracked using an Array with sortable components. In this article we will talk about the IComparable interface used to make an object stored in an array sortable.
  • Boxing and Performance of CollectionsMar 14, 2002. In this article, I will compare some performance issues of values and references types during boxing and unboxing operations.
  • .NET Remoting: The Interface ApproachMar 26, 2002. .NET Remoting provides a powerful and high performance way of working with remote objects. Architecturally, .NET Remote objects are a perfect fit for accessing resources across the network without the overhead posed by SOAP based Web services. .NET Remoting is easier to use than Java's RMI, but definitely more difficult than creating a WebService. In this article, we will create a remote object, and access this object using the Interface.
  • .NET Remoting: The Simple ApproachMar 26, 2002. .NET Remoting provides a powerful and high performance way of working with remote objects. Architecturally, .NET Remote objects are a perfect fit for accessing resources across the network without the overhead posed by SOAP based Web services.
  • Asteroids in C#Apr 04, 2002. As my first experiment in a game design, rather than using a DirectX wrapper, I decided to explore the functionality of GDI+. GDI+ has lot of nice features to offer but performance wise it is slow. So GDI+ may not be a good idea to develop practical fast paced games. This game also includes sounds.
  • 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).
  • Performance Comparison of XslTransform InputsMay 02, 2002. To transform XML into HTML for use on a Web site or to transform it into a document that contains only the fields required you could use the XSLTransform class (found in the System.Xml.Xsl namespace).
  • Performance Comparison of XslTransform InputsMay 02, 2002. To transform XML into HTML for use on a Web site or to transform it into a document that contains only the fields required you could use the XSLTransform class (found in the System.Xml.Xsl namespace).
  • .NET Performance Counters, Part 1: Predefined CLR Performance CountersMay 13, 2002. In this article, I will describe what a performance counter is and introduce you to the predefined counters that you can use to monitor the state of the CLR while your applications run.
  • 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.
  • ADO.NET From Windows DNA's PerspectiveJun 12, 2002. Windows DNA is a framework to build multi-tier, high performance, scalable distributed applications over the network. This article takes a Windows DNA perspective and compares how ADO.NET fits in Windows DNA.
  • Form Designer in C# and .NETSep 02, 2002. The FormMaker.NET Application has an undo feature for removing controls you just placed on the form and a fine tuning placement mechanism for positioning the control through the arrow keys.
  • Remoting Calls RecommendationsSep 19, 2002. The goal of this article is not to describe remoting technology in details. It is more focused at the practical design and implementation mistakes during development process concerning garbage collection and performance.
  • Remoting Calls RecommendationSep 19, 2002. The goal of this article is not to describe remoting technology in details. It is more focused at the practical design and implementation mistakes development process concerning garbage collection and performance.
  • 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.
  • Working with Win32 API in .NETNov 21, 2002. Windows exposes lots of functionality in the form of Win32 API. Using these API you can perform direct operation in windows, which increases performance of your application.
  • 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.
  • Caution When Using SetParentRow of a DataSetJan 13, 2003. I had a serious performance killer when using SetParentRow in the creation of a DataSet in ADO.NET.
  • 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.
  • Iterations and Performance in .NETApr 15, 2003. I’ve been implementing numerical libraries in .NET and have come to some conclusions about iteration performance.
  • 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.
  • Boxing and Unboxing of Value Types : What You Need to Know?Jul 21, 2003. Programmers new to C# can encounter less than ideal performance and even unexpected results due to boxing and unboxing of value types.
  • 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.
  • 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.
  • Debugging a Compiled ComponentFeb 02, 2004. After an assembly is compiled into a dll in a release mode, it is very difficult to gather information from it such as runtime performance, parameters values, etc.
  • Oracle Data Provider for .NET : Part IVFeb 20, 2004. Oracle Data Provider for .NET (ODP.NET) is an implementation of a data provider for the Oracle database. ODP.NET uses Oracle native APIs to offer fast and reliable access to Oracle data and features from any .NET application.
  • 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.
  • 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.
  • Understanding .NET Framework at a glanceMay 05, 2004. In this article we are going to look at Microsoft .NET Framework. This is the newly established software development environment which helps developers to develop applications quickly and gives optimum, efficient, scalable, performance oriented applications in different languages like Visual Basic .NET, C#, ASP .NET, and Jscript .NET.
  • 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.
  • Securing Your ASP.NET Web Applications Aug 31, 2004. Web application security is not just about attackers hacking websites, stealing sensitive information from websites, sending high traffic to websites with denial of service attacks, viruses, worms and Trojan horses. Are these are the only problems that we have? The answer is no. There are other problems that are frequently overlooked.
  • Microsoft Application Center TestOct 13, 2004. Application Center Test (ACT) stress tests Web servers and analyze performance and scalability problems of Web applications. ACT simulates a large group of users by opening multiple connections to the server and rapidly sending HTTP requests. It also supports several other authentication schemes and the SSL protocol, making it ideal for testing personalized and secure sites.
  • 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.
  • Best Practices of Exception ManagementMar 08, 2005. Exception management is one of the key area for all kinds of application development .You should adopt an appropriate strategy for exception management to build high quality and robust application .It is a very powerful concept and makes the development work very easy if its used efficiently.
  • Measure Web Service Performance using NetMonMay 03, 2005. This article gives an idea how to identify the performance of web method calls by using NETMon tool.
  • 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.
  • New Dataset features in ADO.Net 2.0Aug 22, 2005. ADO.NET class libraries are used for accessing data from a wide range of data sources. One of the best features in ADO.Net is DataSet.Even though it was an exciting feature, performance was a concern with DataSet. Lets look some changes made to DataSet in ADO.Net in this article.
  • Glue IIS with Business Logical Tier using Batching, Asynchrony, and Parallel ComputationOct 26, 2005. A great and unusual way to boost your web application performance and scalability five times or more.
  • Navigating Data Grid using Client ScriptingNov 10, 2005. It's very common practice to use the Data Grid to present data over web pages. Though the Data Grid is provides the richer UI presentation if not coded and handled effectively it can have great performance issues. This article gives the code sample for navigating the data grid using the Client Scripting (thereby can be used for lots of validation before doing the Post Back to the server) and minimizing the round trip to server
  • 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# Heap(ing) Vs Stack(ing) in .NET: Part IJan 14, 2006. Even though with the .NET framework we don't have to actively worry about memory management and garbage collection (GC), we still have to keep memory management and GC in mind in order to optimize the performance of our applications.
  • 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.
  • The C# Value Type and BoxingFeb 17, 2006. Even though with the .NET framework we don't have to actively worry about memory management and garbage collection (GC), we still have to keep memory management and GC in mind in order to optimize the performance of our applications. One of the things we need to be aware of is how the Common Language Runtime (CLR) deals with references to value types.
  • 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.
  • Tips to Improve the Performance of ASP.Net ApplicationMay 12, 2006. This article features tips to improve the performance of ASP.Net Application
  • 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).
  • Best Practices of Compact FrameworkMay 17, 2006. This shares a few recommendations for use in our day to day development of Compact Framework applications.
  • Display Process list and Processor Performance in C#Jun 14, 2006. This article shows how to display Processes list and performance of processor exactly.
  • Streamlining Web Application PerformanceJun 29, 2006. This article discusses some performance tuning tips for those who use ASP.NET as front-end and Microsoft SQL Server as back-end to develop their applications.
  • System components performance in ASP.NET using C#Jul 01, 2006. This article shows how to retrieve system properties in a webpage on just singleclick of mouse.
  • Best practices for .Net Performance - IAug 03, 2006. This article gives you an overview of best practices to attain .Net performance.
  • Using Predicates over foreach in ArraysOct 24, 2006. We generally use foreach blocks to iterate through Arrays n Lists in order to operate on them which not only makes our code long n confusing but also makes us compromise on performance. The solution to this lies in Predicates...
  • 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.
  • Monitor and Display CPU State InformationDec 18, 2006. This article describes a quick and simple approach to displaying information about the state of the CPU or CPUs on a targeted machine.
  • Multi-threaded Asynchronous Programming in C#... Getting started.May 12, 2007. Trying to build better solutions and growing as a developer has always been fun for me and I’m always looking for ways to build more scalability and robustness in the software I am writing. I had a revelation that I’ve been doing a lot of C# tweaking but not taking advantage of the core performance enhancements cooked right into C# and it all comes down to one thing: Asynchronous multi-threaded programming.
  • Multi-threaded Asynchronous Programming in C#... Through The Web Page. Part VIJul 27, 2007. Async web pages which are primarily used as a server performance enhancement. There are two main methods we will be looking at that are used to execute operations asynchronously from web pages: Page.AddOnPreRenderCompleteAsync() and Page.AddOnPreRenderCompleteAsync().
  • Query Optimization in SQL Server 2005Dec 19, 2007. This article offers suggestions on how to optimize query performance in SQL Server 2005.
  • Caching in ASP.NET 2.0Jan 08, 2008. Caching is a technique of storing a copy of data in memory. You could cache a page or the results of a query. The advantage of caching is to build better performance into your application.
  • 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.
  • High Performance Abstraction Layer for Non-Blocking Asynchronous Thread Safe SqlServer CallsApr 25, 2008. One of the things I find myself doing frequently is writing (and re-writing) plumbing code to execute database CRUD operations. I wrote an abstraction layer over asynchronous SqlServer calls that allows developers to correctly make async calls agains SqlServer without having to deal with any of the complex plumbing normally required. All source code is included with this article.
  • Avoid casting to improve code performanceMay 19, 2008. Casting is a big problem when it comes to the code performance. This article talks about how we can take advantage of generics in C# 2.0 to avoid casting.
  • SQL Server Effective Database Tune up and MaintenanceAug 08, 2008. Here are a few tips for developers that are not a professional DBA but have been assigned the responsibility for the database for some reason.
  • Writing Your Own GPS Applications: Part IIAug 19, 2008. In part two of the series, the author of "GPS.NET" teaches developers how to write GPS applications suitable for the real world by mastering GPS precision concepts. Source code includes a working NMEA interpreter and sample high-precision application in C# and VB.NET.
  • 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).
  • Working of Garbage Collector - Part IISep 24, 2008. this article explains you how garbage collector is well tuned for its maximum performance
  • Caching in ASP.NET 2.0Sep 25, 2008. This article discusses basics of caching in ASP.NET 2.0 and 3.5 and how to use it in our application to improve the application performance.
  • Materialized Views in Database SystemsOct 30, 2008. This article is intended to illustrate the concepts of materialized views in database systems and their realization through examples written for SQL Server and Oracle database systems.
  • Performance Tuning in Database SystemsNov 08, 2008. In this article, we’re going to learn the principles and techniques you can use to help troubleshoot and evaluate query performance by illustrating examples in Microsoft SQL Server and Oracle database.
  • Caching in ASP.NetJan 05, 2009. Caching is… a technique used to temporarily store the frequently used data and Web pages on the main memory, to be reused later on.
  • Coding Better: Programming From the Outside In. Part IJan 25, 2009. Modeling an API for a domain is a difficult task. The trick is to get the correct level of encapsulation/abstraction while making the API easy to understand and consume. If we can model our domains at the same level that we understand them linguistically then we are 90% of the way there. This article discusses a programming methodology by which we can build a concise interface that will provide a consistent level of abstraction and is easy to code against.
  • Custom paging in ASP.NET 2.0 and SQL Server 2005 using ObjectDataSourceApr 13, 2009. This article is intended to show how to apply the paging mechanisms in Web applications using ASP.NET 2.0 and SQL Server 2005 as well as using the ObjectDataSource components.
  • Extending Logging Functionality From Enterprise LibraryApr 17, 2009. The Microsfot Enterprise Library provide us a collection of reusable software components, so software developers can take advantage of them to put them into enterprise use. Now I will share my personal experiences with my friends of how to extend current enterprise library functionality and improve the performance of enterprise applications.
  • Parameters for ObjectDataSource in ASP.NET 2.0Apr 30, 2009. This article is intended to show how to invoke server-side methods (expecting input parameters) stored in the SQL Server 2005 Management System using the ObjectDataSource components.
  • Faster Performance of Deployed ASP.Net SitesMay 14, 2009. This article provides a few tips to ensure your deployed ASP.Net always runs with the best possible performance and no security information leakages.
  • Implementing business rules using customized DataSet objectsMay 15, 2009. Information systems contain and enforce rules about the business they support. A rule is constraint which describes the way how objects are to behave. Field-level validations are checks that pertain to the property values of the underlying business entities. For example, a field must be 50 characters or less in length or some fields are required while other fields are optional as well as some fields must be greater than a specific value.
  • Stream operation in WCFJun 01, 2009. WCF provides the support for Stream object. It typically recommends the developer to handle the message which size is too large as Stream object for the sake of high performance. However, there are some constraints on Stream operation to note.
  • MVC Declarative BindingJun 08, 2009. One of the things that makes the bar to implement any “MVC-ish” pattern high is the tremendous amount of plumbing required just to get started in order for the different entities to communicate state changes. This article introduces a utility library that can be used to declaratively bind the model and view encapsulating all the wiring required and making implementation much easier.
  • Instance Management in WCF Part # 2Jun 23, 2009. This article is part # 2 of Instance Management in WCF. This article will explain Session Full Instance management service. This will explain different Session Mode at Contract level. This will explain Per-session service also. This article will be explaining Session Full Service with a code also.
  • 7 Simple Steps to Enable HTTPS on WCF WsHttp BindingsJun 23, 2009. When we talk about WCF security there are two ways one is the transport level security and the other is message level security. Transport level security is nothing but built in security by protocols itself. In message level security we need to encrypt the data, in other words security is injected in the data itself. In this article we will look in to how we can implement transport level security using WsHttp bindings. We do not need to do extra development for transport level security because it’s more of the protocols inherent security model. In this article we will implement WsHttp using HTTPS as transport security.
  • How to improve your LINQ query performance by 5 X times ?Jul 17, 2009. LINQ has been criticized by many early adopters for its performance issues. Well if you are just going to drag and drop using DBML code generator I am sure you will land up in to mess. Try doing this make a simple LINQ to SQL project using DBML and see your SQL profiler, I am sure you will never like to touch DBML code generator again. In this article we will first look in to how LINQ queries are executed, and then we will touch base on how compiled LINQ queries can help us improve our application performance at least 5 times. My numbers can be 10% up and down as I had come to that figure using my environmental situations.
  • Calling COBOL from C#Jul 28, 2009. There is a lot of COBOL code in production around the world. Rewriting that code into another langugage just to change the language makes little sense and introduces a high level of risk. Instead of changing the COBOL code that has been working and doing it's job for quite a while, why not interact with it using C#? This article shows how to utilize C# to call both procedural and object oriented COBOL.
  • Tips to Improve the Performance of an ASP.Net ApplicationJul 29, 2009. This article provides some tips to improve ASP.Net application performance.
  • Transport level Security in WCFAug 10, 2009. This article will give a very brief introduction of transport level security in WCF.
  • Inserting records in a database using stored procedure and ADO.NET technology.Aug 13, 2009. In this article I will explain you how to use CommandType stored procedure to insert records in a database in a disconnected manner.

About Performance-Tuning-High-Level

NA

SPONSORED BY

File APIs for .NET
Aspose are the market leader of .NET APIs for file business formats – natively work with DOCX, XLSX, PPT, PDF, MSG, MPP, images formats and many more!
Download Free eBooks