Welcome to MSDN Blogs Sign in | Join | Help

March 2005 - Posts

Using reflection to List version to version assembly changes: Libcheck, one of the best tools ever! [Kit George]

OK, so libcheck has been around for a while. I actually made the code available publicly in the past via GotDotNet, but when I released it there, it was called WinChurn. Libcheck remains the core of this functionality, and it's an awesome little tool.
Posted by BCLTeam | 6 Comments

TechEd 2005: submit your votes for Birds Of A Feather (BOF) sessions! [Kit George]

The CLR has submitted a few BOF sessions for consideration on the teched site. If you're going to be heading to teched this year, I'd suggestion going to http://www.msteched.com/cfp/bofvoting.aspx , and voting fore the session you think sound the most
Posted by BCLTeam | 1 Comments

Summing it all up: 35 blog entries in 2 days from the BCL Team [Kit George]

Is there such a thing as too many blogs? We've certainly pushed the limit in the past couple of days, and a few folks have pointed out that some of the entries are dropping off the view, and may be getting missed. Here's a list of all the blogs in the
Posted by BCLTeam | 5 Comments

Intra-Whidbey (V2.0) Obsoletions: a MUST have list for people using Beta2 [Kit George]

A critical list for all of you who want to pick up beta2 (and let's face it, who wouldn't?) and write code which can latter still run successfully on RTM bits (or at least, be in better shape to run). We have a lot of APIs which have been introduced during
Posted by BCLTeam | 5 Comments

Why aren't there parsers for CodeDom? [David Gutierrez]

This is an interesting question, and the answer is a bit more than just "historical reasons." It's hard. Yes, it's just plain harder to parse code than it is to emit it. Parsing code is a good portion of what compilers do, and since most compilers are
Posted by BCLTeam | 8 Comments
Filed under:

Language features which can’t be expressed using CodeDOM in Whidbey. [Vinaya Bhushana Gattam Reddy]

The CodeDom provides a powerful way for applications to emit source code in a variety of languages. CodeDom provides necessary infrastructure to generate common language features that are necessary across the languages instead of providing ways to generate
Posted by BCLTeam | 12 Comments
Filed under:

New Performance Counter Features [Ryan Byington]

Introduction Before going into detail of the changes in v2.0 I think it is important to start off with explaining the existing problems with the performance counter infrastructure. The first problem is the memory reserved for performance counters is fixed,
Posted by BCLTeam | 3 Comments

Cross Version Serialization Broken between V1.1 and V2.0 [Ryan Byington]

In V2.0 we sometimes needed to add fields to types that existed in V1.1. If this type just has the Serializable attribute applied to it this will break serialization compatibility with V1.1. Currently when 1.1 tries to deserialize an instance with this
Posted by BCLTeam | 4 Comments
Filed under:

Knowing what's out there: creating a reference list of Managed .NET Apps [Kit George]

Keith Brown of PluralSight has begun a wiki page in which we're encouraging people to list their managed applications. The intent here is to simply start creating a list of all the many, and varied applications that people work on using .NET code. I'd
Posted by BCLTeam | 2 Comments

How to get .NET Framework Design Guidelines Updates [Krzysztof Cwalina]

The .NET Framework Design Guidelines on MSDN are getting updated but not that frequently. Many people have asked us to publish updates more often. I have been posting such updates here for some time now. Yesterday, I added new guidelines for throwing
Posted by BCLTeam | 5 Comments
Filed under:

Why System.Collections.ObjectModel namespace? [Krzysztof Cwalina]

Many people ask about why Collection, ReadOnlyCollection, and KeyedCollection were moved to System.Collections.ObjectModel namespace. You can read the reasoning here .
Posted by BCLTeam | 2 Comments

PowerCollections MSDN TV Broadcast [Krzysztof Cwalina]

Have you heard about PowerCollections ? It’s an extension library to the new generic collection classes in the System.Collections.Generic namespace. It contains many advanced collections and a ton of algorithms. You can also watch an MSDN TV broadcast
Posted by BCLTeam | 4 Comments

Play the CLR acronym game! [Brad Abrams]

One of my pet peeves is seeing people use obscure managed code related terms incorrectly. So, I thought I’d make a little game out of it… Can you match the term to their usage correct? Terms: CLR CLS CTS CLI CER Fill in the blank: The __ is a contract
Posted by BCLTeam | 11 Comments
Filed under:

How to set MACL from one directory to another? [Ravi Krishnaswamy]

A correct way to do this will be as follows: // Get DirectorySecurity from source directory DirectorySecurity dsSrc = Directory.GetAccessControl(srcPath, AccessControlSections.Access); // Transfer ACL security descriptor byte[] sdBinary = dsSrc.GetSecurityDescriptorBinaryForm();
Posted by BCLTeam | 2 Comments
Filed under:

Avoiding Boxing in Classes Implementing Generic Interfaces through Reflection [Dave Fetterman]

Krzysztof Cwalina showed me this cool trick to avoid boxing value types when working with generics and interfaces. This may be a bit dense but the trick is rarely seen and illustrative. Note before proceeding: This technique is only available in VS.NET

How Did System.Decimal Change from V1.0 to V1.1? [Anthony Moore]

There were very few noticeable changes between the V1.0 and the V1.1 release. One change that people sometimes notice is that Decimal looks different across the two versions. The changes are largely cosmetic, although in some rare cases applications have
Posted by BCLTeam | 2 Comments
Filed under:

CodeDom now supports a way to generate code for CodeTypeMember [Vinaya Bhushana Gattam Reddy]

CodeDom now supports a way to generate code for CodeTypeMember. In V1.1 there is no way to generate a method without a type information using CodeDom. There are several tools and applications including ASP.Net had requirements to create a method without
Posted by BCLTeam | 10 Comments
Filed under:

SafeHandle: A Reliability Case Study [Brian Grunkemeyer]

SafeHandle is the best way to represent handles in managed code today. For a high-level overview of what SafeHandle does, Ravi posted a writeup on the BCL blog titled SafeHandles: the best v2.0 feature of the .NET Framework . However, if anyone wants
Posted by BCLTeam | 29 Comments

SafeHandles: the best V2.0 feature of the .NET Framework [Ravi Krishnaswamy]

Rather than giving a short response to Jeff Atwood's question, ' If you had to pick one, what is the single most important feature in 2.0 that platform developers should be experimenting with and exploiting as soon as they get their hands on it? ', I
Posted by BCLTeam | 9 Comments

.NET Regular Expressions: Regex and Balanced Matching [Ryan Byington]

One of the questions that seems to come up a lot is that someone wants to match balanced parenthesis. Something like the string “(aa (bbb) (bbb) aa)” and they want to match from the beginning parenthesis to the matching end parenthesis. Generally this
Posted by BCLTeam | 11 Comments
Filed under:

Potential additions to the Math class [Katy King]

In preparation for the next version of the product, we've collected suggestions for additions to the Math class and related classes. To give you an idea of the kinds of things people ask us for, here are a list of some of the requests we've received.
Posted by BCLTeam | 36 Comments
Filed under: ,

.NET Regular Expressions: how to use RegexOptions.IgnorePatternWhitspace [Ryan Byington]

The IgnorePatternWhitespace option tells the Regex parser to ignore any spaces or tabs in your expression except if it is in a character class(ie [ ]). At first this may not seem all that useful but it really can increase the readability of a regular
Posted by BCLTeam | 4 Comments
Filed under:

DirectoryInfo.Name lacks security checks [Ravi Krishnaswamy]

This came out of one of our internal security review. I thought I would post it here for beware sake. DirectoryInfo’s Name property currently requires no permission checks in and of itself, though you do need Read permission to construct a DirectoryInfo
Posted by BCLTeam | 2 Comments
Filed under:

What are the New DateTime Features in Whidbey [Anthony Moore]

What are the New DateTime Features in Whidbey [Anthony Moore] DateTime has received quite a number of new features in Whidbey. Several of them have been mentioned in other blog posts. Here is a summary of all the new features added. Format Change After
Posted by BCLTeam | 9 Comments

IO Exceptions will now reveal FullPath (if you have PathDiscovery access) [Ravi Krishnaswamy]

You might start noticing that in Whidbey Beta2, IO exceptions are handing out full qualified path which was previously regarded as secure information. Well, don’t be alarmed . This information is still secure and let me explain how. IO classes often take
Posted by BCLTeam | 2 Comments
Filed under:

A Tracing Primer - Part I [Mike Rousos]

One of the changes in Whidbey will be a revamped tracing system. Much is unchanged - tracing messages are sent through switches to listeners where the data is reported in some fashion. One of the main differences is the inclusion of the TraceSource type.
Posted by BCLTeam | 25 Comments
Filed under:

Writing a Useful Windows Service in .NET in Five Minutes [Dave Fetterman]

When opening up a new project in Visual Studio, one finds many, many options for deploying your new killer app: Windows Applications, Console Applications, and Web Services are all popular choices. Even when creating a simple daemon-type process, however,
Posted by BCLTeam | 16 Comments

Testing Managed ACL for IO [Lakshan Fernando]

One of the common requests we had after we shipped V1.1 was on managed ACL support for the Framework. We’ve added comprehensive ACL support in V2.0. This was a cross-group effort with multiple teams working on this feature; the windows core security team
Posted by BCLTeam | 3 Comments
Filed under:

Synchronization in Generic Collections [Brian Grunkemeyer]

A few astute users of our generic collections observed that we no longer provide a public SyncRoot property on ICollection<T>. I believe we're better off not providing it. You often want to do synchronization at some higher level in your application,

Fixing bugs with compatibility in mind - an IO experience [Lakshan Fernando]

The current focus on the team is bug-fixing, but every so often we get a bug that may cause compatibility issues if we fix it. I thought I would share one such recent scenario where, because the gain doesn’t seem significant enough, we’re currently choosing
Posted by BCLTeam | 2 Comments
Filed under: ,

Best V2.0 feature in the .NET Framework: A BCL Poll [Kit George]

OK, in response to Jeff Atwood’s questions: “If you had to pick one, what is the single most important feature in 2.0 that developers should be experimenting with and exploiting as soon as they get their hands on it? What features in 2.0 *directly* address
Posted by BCLTeam | 12 Comments

Come and Meet the CLR team! [Kit George]

The CLR team would love to meet any interested parties who are in the Seattle area, to chat about Whidbey, problems you’re having in V1.1, or if you’re simply interested in meeting some of the people who work on the CLR. We’ll be looking to do this next
Posted by BCLTeam | 7 Comments

The .NET Vision (aka: the big picture): what are we working towards? [Kit George]

In response to the query for input on what to blog about today, David asked the following question: "I want to know the big picture on things. What is the vision here? The end game?" This is one of those questions where you'll get a slightly different
Posted by BCLTeam | 8 Comments

An intro to CodeDom [David Gutierrez]

I recently gave a talk on CodeDom for compiler writers , and I thought I would adapt some of those slides here as a basic intro to CodeDom. CodeDom, or Code Document Object Model, is a feature which lets you generate code and assemblies in a language
Posted by BCLTeam | 6 Comments
Filed under:

The Base Class Library Program Manager (PM): a job description [Kit George]

I posted a while back on a job opening for a BCL PM position. We got a lot of great candidates in response to that post, and it was quite exciting to see the range of experience and backgrounds in the people who responded. Now if you ever show interest
Posted by BCLTeam | 5 Comments

PerformanceCounters: reading the disk counters [David Gutierrez]

I see a lot of complaints about counters in the Logical Disk/Physical Disk categories always returning zero when you try to read them. Specifically, using PerformanceCounter.NextValue with these counters always returns zero: % Disk Read Time % Disk Write
Posted by BCLTeam | 2 Comments
Filed under:

The SLAR on System.Convert [Brad Abrams]

It is been a while sense I posted in the series sharing some of the information in the .NET Framework Standard Library Annotated Reference Vol 1 . Given today is BCL blog day, I thought I would kick it off by adding a couple of annotations from the System.Convert
Posted by BCLTeam | 5 Comments
Filed under:

New Format on the Block [Anthony Moore]

One thing that has not changed much in Whidbey is the set of format strings used by base data types for parsing and formatting. However, there is one new format element supported by the DateTime class that can be very useful if you use the ParseExact
Posted by BCLTeam | 0 Comments
Filed under: ,

BCL, Blog Day! Tuesday 3/15/2005 (next week) [Kit George]

A heads-up all. The BCL has a chance next week to provide some added value, and we thought we'd keep as the focus, making a number of blog entries and samples. We'll hopefully see a great range of topics pour forth from this blog next Tuesday, so keep
Posted by BCLTeam | 20 Comments

How to Work Around Problems Serializing DateTime in XML [Anthony Moore]

I wrote a while ago about problems with the way DateTime worked with features like DataSet, XML Serialization (WebServices) and XmlConvert. Basically, DateTime is always treated as a local time by these XML-based systems, which means that you get incorrect
Posted by BCLTeam | 8 Comments
Filed under: , , ,

Exceptions and Memory Management [Kit George]

Brad Abrams recently put together a slide deck on the topics of Exceptions, and Memory Management (and general resource management practices). The presentation is available via the BCL Website , here . Brad delivered this presentation while on his recent
Posted by BCLTeam | 0 Comments
 
Page view tracker