- 1
- 2
- 3
- 4
- < previous
- next >
Language-integrated queries with LINQ
LINQ is a generic mechanism with many possible components. LINQ brings data queries into the C# and Visual Basic languages, and makes the syntax for queries against in-memory data structures just like queries against file systems, XML files, and SQL databases.
Several of the LINQ components and providers shipped in VS08, including LINQ to Objects (strings, reflection, and file directories), LINQ to XML, and LINQ to ADO.Net. LINQ to ADO.Net includes two components: LINQ to DataSet and LINQ to SQL. The more ambitious ADO.Net Entity Framework and LINQ to Entities are not included in VS08, but may ship later this year as an add-on.
I tested LINQ to SQL in C# against a SQL Server 2000 database.
The Object Relational Designer worked well to create C# classes from the database schema, and IntelliSense worked well when I was writing LINQ queries. On the other hand, writing LINQ queries by hand against three related tables pushed the limits of my nascent LINQ skills, and I longed for the LINQ equivalent of VS08's graphical SQL Query Designer. I never did figure out how to write the LINQ equivalent of a SQL "SELECT DISTINCT" query.
IntelliSense, refactoring, unit testing, and metrics
When I was working on this small project, I found that the C# refactoring functionality (included in Professional and above) worked well and quite smoothly. When editing C#, the programmer can take advantage of automated refactoring. There is full IntelliSense support for LINQ. Code metrics are calculated only for managed code.
I also found that the code metrics for managed code (included in VSTS Developer and Team Suite) worked fairly well. I'm not sure that I agree with the way the metrics are calculated for code generated from design surfaces, but I can certainly see the overall utility of the metrics, especially in the context of team projects managed with TFS.
I used metrics such as cyclomatic complexity (a measure of the number of linearly independent paths through a program module) years ago to help me manage a large C project with a dozen programmers. I'm happy to see this technology introduced in VS08 for managed code.
I'm disappointed, however, that code metrics and code refactoring are not available for unmanaged C++ projects. On the other hand, C++ projects can use a very nice call browser: It gives you a compact view of the other functions that call a given function, and of the lines of code that do the calls.
I'm happy that Visual Basic projects have code metrics along with an incredibly concise syntax, great IntelliSense, and many code snippets. I'm disappointed that Visual Basic projects don't have code refactoring, although this functionality can be added using one of several third-party plug-ins.
I'm delighted to report that unit testing is now a feature of the Professional Edition. (It was a VSTS feature in VS05.) You can create unit tests and test projects for C#, Visual Basic, and managed C++ solutions. It was possible to do this before using the free open source program NUnit, but it's a little nicer having the unit test capability integrated with the IDE.
IntelliSense for JavaScript was one of the promised improvements in VS08. It's there, but at a cost: Although support for the sort of JavaScript used to write ASP.Net AJAX and Silverlight pages has been added, support for editing VBScript and Classic ASP has been dropped. As I am still maintaining a 1999 vintage Classic ASP site, I was more than a little annoyed to find that VS08 did a worse job with ASP pages than VS05, or indeed than Visual InterDev 6. Microsoft is considering restoring this functionality for a service pack to VS08. Meanwhile, people who still maintain Classic ASP sites should not abandon their existing tools.
- 1
- 2
- 3
- 4
- < previous
- next >
Read up on the latest ideas and technologies from companies that sell hardware, software and services. The state of Middleware
Strategies for Eliminating .PST Files
Email Archiving Implementation: Five Costly Mistakes to Avoid
Delivering the Power of Choice with Microsoft Dynamics CRM
Data grids and service-oriented architecture
Email Archiving 101—Customer Case Study
CRM your salespeople will love
Everything you need to know about email and web security (but were afraid to ask)
Zones provide focussed content from Computerworld and leading technology partners.Discover how SOA can create smarter outcomes for your business.
Attend and learn:
- How SOA is helping leading companies to become more agile
- Where you should be applying SOA processes in your company
- The top SOA implementation mistakes to avoid
Click here for more information.
- +
Computerworld Live Podcast #97: The Future of Enterprise Networking 25/07/2008 09:45:36
This week CW Live chats with Mark Thompson, global sales and marketing manager for HP ProCurve, on the future of the enterprise networking. Mark discusses the trends we can expect to see in the near future and how the right infrastructure can ensure your enterprise network is secure. - +
Computerworld Live Podcast #96: Security at the Edge 11/06/2008 09:22:22
CW Live speaks with Amol Mitra, HP ProCurve Director of Marketing for Asia Pacific and Japan. Today's topic: how enterprises are starting to shift away from simply controlling security via server logins, firewalls and moving to more adaptive security frameworks. - +
Data Management Edition #10: Multi-Petascale Systems 02/05/2008 09:12:33
This week we look at sustainability and the development of multicore technologies to build multi-petascale systems. - +
IT Security Edition #11: How to poison the Storm botnet 01/05/2008 08:51:55
This week CW Live presents a case study on how to poison the notorious Storm botnet . Plus we take a look at Cisco's plans for Ironport. - +
IT Security Edition #10: Cyber-battles fought and won 24/04/2008 11:09:47
Vendors bow to end user pressure to improve product security, and we take a look at the latest concepts shaping the cyber-battlefield of the future.
AOC Launches 18.5” Widescreen Green 16:9 LCD Monitor in Australia and New Zealand 2008-12-03 15:30:00+11
FrontRange Solutions eases software license management with new License Manager 3.0 2008-12-03 14:56:00+11
Progress Software's Cure for Managing Services-based Applications 2008-12-03 14:42:00+11
S3 Graphics Unleashes Full OpenGL® 3.0 API Support with Beta Driver for Chrome 500 Series GPUs 2008-12-03 14:08:00+11
Informatica Powercenter added to Nec Infoframe Solution Suite 2008-12-03 11:36:00+11
Still Sneaking In: The Threats Your Security Tools Aren't Telling You About
Web 2.0 applications are all the rage, offering us tremendous value when it comes to collaboration and communication. They also open us up to new kinds of attacks however, and can cause problems in keeping systems and data secure. Read on to learn about the new attack methods and how you can defend yourself and your business.












