In Visual Studio Beta 1, static checking of code contracts is only available in Team System edition. Limiting a feature which has such potential to dramatically improve the quality of applications running on the .NET platform to just the very top tier of development tools leaves it out of reach for the majority of .NET developers. Since design-by-contract has nothing to do with team-based development, but is in fact a feature that is useful to all professional developers, the full feature set of Code Contracts in .NET should be available in Professional Edition.Static checking is the core of DbC. Without it, the entire Code Contracts library just becomes a fancy way of throwing ArgumentExceptions. As long as static checking is only available in Team System, DbC will never become mainstream in .NET development. This would not only be a travesty for the .NET community, but also an insult to the Code Contracts team that has worked so hard for so long to bring this great feature to the framework.Please see the following forum thread for more discussion about this critical issue: http://social.msdn.microsoft.com/Forums/en-US/codecontracts/thread/459bdcbe-8af2-4781-b1fa-eec1c9d79a52. I will also include a few representative quotes:"In my company...we evalute actually Spec# and it works fine with any versions of VS2008 ...I don't understand why a Team System required (not for PEX or Spec#) while the foundation seems to be the same like spec#"."This feature will give .NET an huge advantage over it's competitors. But this will only happen if we can make it mainstream...If you don’t do it for the software industry, then think about the number of organizations that will possibly move to .NET (and therefore buy Visual Studio) because of Code Contracts.""I'm a professional developer who uses VS Professional. Most of my clients use VS Professional, not TS. I simply will not be able to adopt your implementation of code contracts unless it's available in VS Pro...""It is a shame though that MS is not going all the way in assisting all paying VS developers in improving the quality of their code in this pretty elegant way. Team System is not worth the price tag and tends to be overkill for small/medium size organisations.""Each of our developers has Visual Studio 2008 Pro with MSDN Subscription Pro. At $2000 a pop, I would expect to be able to use Code Contracts without using TFS.""VSTS is very expensive. Where I work...we are not big enough to justify or afford using VSTS as our dev tool...Yet we pay big money to get the "Professional" package and we build big and complex software with those tools. Being able to statically assert the correctness of our software can only improve the quality and means less bugs disovered when we're live on the production server...I think all those features are very useful to any "Professional" software development and I don't see why they would belong to a "Team System" only. They have nothing to do with team work, only code quality. The better the .NET code in the wild is, the more the platform will shine.""Of course significant investment has been put into creating a unique and valuable product. This investment deserves reward. However, the Professional edition of Visual Studio is an expensive product - its price point creates the justifiable expectation that it should contain the latest state of the art professional development tools.""To my mind, MS dropped the ball on unit testing back with VS2005. By restricting it to VSTS at the time, they basically handed the market to NUnit on a plate. Making it available in Pro for VS2008 was too late - they'd already lost developers to NUnit. If MS wants Code Contracts to really change the industry, they've got to put it in the hands of the majority of developers...Can you imagine what would have happened if everyone had got LINQ in VS2008, but only TS developers could use query expressions instead of dot notation? Please, please revisit this decision."
Version Currently Used