in

ASP.NET Weblogs

This Blog

Syndication

Sponsors

Pablo Peralta's Blog

Welcome to my blog. Here I will share some information, thoughts and comments about technology and management.
  • How to see the project dependencies in VS 2008

    How many times do we need to understand an application that we did not develop or we develop some time ago and do not remember the dependencies between the different projects within a solution?

    Visual Studio 2010 will come with some tools to address architecture understanding, but meanwhile, VS 2008 by default does not come with anything to observe that.

    Making a short search, I came accross with this tool that I am going to share: 

    Visual Studio Dependencies Manager [ http://www.codeplex.com/vsdm ]

    Dependencies Manager

    This is a free too, in beta phase that allows to visually see dependencies between projects within a solution, including external assemblies.

    Additionally, it allows other things like packaging and publish the .dlls. I only used it for the former.

    Despite it has opportunities to be improved, above all graphically, I think it is useful to have a first approach to understand the interdependencies within a solution.

    Hope this post is useful. More info in: http://www.codeplex.com/vsdm

     

  • Silverlight 3 and 4 to 'open up new areas' - Microsoft

    Despite there is no official announcement yet, it all seems that in 2009 we are going to have a new version of Silverlight. More details are going to be revealed in Mix 09 event this year.

    According to the news, Silverlight 3 will see a number of features designed to improve graphics. These include H.264 - a video-compression codec built for most applications and different bitrates - 3D graphics, acceleration of the underlying hardware, and rich-data binding in Visual Studio and Visual Web Developer Express.

    Guthrie said you'll be able to: "Do things you can't do with AJAX and Flash in the browser."

    Here, the news: http://www.theregister.co.uk/2009/01/30/guthrie_silverlight_3_and_4/print.html

  • To make SQL to generate the scripts according to the version we want..

    I came across the following problem:·         I generated a script for a SQL 2005 job from SQL Server Management Studio 2008·         When running that script on another SQL 2005 I got the following error:@schedule_uid is not a parameter for procedure sp_add_jobschedule. Getting through this, I found out that the error is due to SSMS 2008 generates scripts for 2008 by default, hence, not taking into account the engine version. So, even though we are using a DB in 2005, the scripts will be targeted for 2008. More info here.In order to change this behavior we have to go to Tools -> Options -> SQL Server Object Explorer -> Scripting and change the "Script for Server version" option. There we can select the specific version we want the scripts to be generated for.After changing this, it perfectly worked on 2005.Hope it is useful, thanksPP

     

  • Most Useful 20+ Visual Studio Add-ins

    I am sharing a list of tools that I found for Visual Studio.Some of them we may recognize and some others sound pretty interesting to try according to their descriptions. I invite you to take a look to the list and see if any of them make your daily work easier. If so, try it and share the feedback J.The complete list is here: http://netindonesia.net/blogs/agusto/archive/2008/05/23/most-useful-20-visual-studio-add-ins.aspx

    Thanks,

    PP

     

  • Windows Live Sync vs. Live Mesh vs. SkyDrive: Which is Right for You?

    I found a pretty short and useful article about this three tools, that sometimes they overlaps and it is not clear which to use when.The full article is published here: http://www.labnol.org/internet/compare-windows-live-sync-mesh-and-skydrive/6166/Following, a transcription of it:Windows Live Sync vs. Live Mesh vs. SkyDrive: Which is Right for You?Written by Amit Agarwal on December 20, 2008 Text Size The new Windows Live suite includes three different services for file storage and online synchronization. They are called Live Mesh, Windows Live Sync and Windows Live SkyDrive - all apps are available for free and you just need a Windows Live account to get started. Windows Live SkyDriveWindows Live SkyDrive is an online file storage service similar to Box.net. You can manually upload documents, pictures and other files to Windows Live servers via the browser and your uploads will remain accessible from any other computer or web-enabled mobile phone. Windows Live SkyDrive requires no installation and you get 25 GB of free storage space though the maximum size of an individual file / document cannot exceed 50 MB.  Each file or folder on SkyDrive has a unique Web address (URL), so you can easily paste that link into email messages or other documents for direct access.

    Windows Live Sync

    Windows Live Sync, formerly known as FolderShare, is a desktop app + web service that lets you sync files and folders across different computers. You can synchronize up to 20 folders containing up to 20,000 files each. Individual files cannot be larger than 4 GB in size.Say you have music files stored in your home computer’s hard disk and want to access this collection from the Office computer. Simply install Windows Live Sync of both the computers and add "my music" folder to your "personal folders" - now your entire music collection will be accessible from either of these computers.Windows Live Sync also lets you remotely access your files on the hard drive from any other computer via the browser without setting up synchronization. This is handy in situations like where you have to download a presentation from your work computer that’s saved on the desktop - just browse to the desktop folder via Live Sync website and download the file.Other than online synchronization, Windows Live Sync also lets invite family members and colleagues (as readers, contributors or owners) to access certain folders on your computer though they will have to install the Live Sync software for this.Windows Live Mesh

     

    Live Mesh includes everything that Windows Live Sync has to offer plus two extra features - cloud storage and remote desktop (with support for copy-paste).You first need to download the Live Mesh software and then select folders / files that you want to sync with other computers. The process is almost the same as Live Sync but here you can add folders for synchronization from Windows Explorer itself (right click any folder and click "Add Folder to Live Mesh") while Live Sync only offers a web interface to explorer.When you add any folder to Live Mesh for synchronization, a copy of that folder gets stored online so you will always have access to your files even if the main computer is offline. This service is known as Live Desktop and offers 5 GB of online storage space.Another important difference between Live Mesh and Windows Live Sync is Live Remote Desktop - Live Mesh lets you completely control the remote desktop just like other screen sharing application. You can even copy files and folders from the remote desktop to your local desktop through simple copy paste - copying folders manually is not possible in Windows Live Sync. Both Live Mesh and Windows Live Sync offer clients for Windows and Mac but you may also install Live Mesh on mobile phones running Windows Mobile 6.1 or later.

    Which Live Service is right for me? As expected, each of these Live services do have some overlapping features. Live Skydrive is for online storage, Live Sync is primarily for folder synchronization across computers (no storage) while Live Mesh offers a good mix of both though with limited storage space(5GB). Therefore my suggestion would be to go with SkyDrive as well as Live Mesh - you’ll get plenty of storage space plus remote desktop plus you can access important files from any other computer.

  • Could not load type 'Microsoft.TeamFoundation.WorkItemTracking.Client.WorkItemDeniedOrNotExistsException'’

    I faced this problem after reinstalling my machine and tried to create a new task in Team Foundation.The complete error is:Could not load type 'Microsoft.TeamFoundation.WorkItemTracking.Client.WorkItemDeniedOrNotExistsException' from assembly 'Microsoft.TeamFoundation.WorkItemTracking.Client, Version=9.0.0.0, Culture=neutral, PublicKeyToken=b03f5f11d50a3a'.After trying some things, i.e. putting the .dlls manually in the GAC, the solution was: Reinstall the SP1 beta of VS 2008 JOn this page appears some members of the community who had the same problem:

    http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=3384694&SiteID=1&pageid=0

    Hope it may be useful,

    PP

  • PDC announcement – Windows Azure & Windows Azure Developer Services Platform

    ‘We are in the early days of transformation’ said Ray Ozzie at the opening keynote at PDC, introducing afterwards the new platform from Microsoft for the cloud, Windows Azure.

    This is a platform that pushes a paradigmatic and important change about how we conceptualize and think of our applications, how we distribute them, how we host them, what we are going to have ‘in premise’ (in our datacenter) and what we are going to host ‘in the cloud’, how we are going to scale out and, in the end, how we are going to follow a S+S (Software + Services) strategy.

    We can find a lot of information about this platform in the following site: www.azure.com.

    I am going to share here a brief summary of what this platform means and which are the benefits that we are going to find as developers / architects:

    What is Windows Azure?

    It is a new operating system from Microsoft, thought for the cloud. It has been created to support the mega-datacenter that Microsoft has recently released in CTP so as we can host our applications and services there.

    So, it isn’t an operating system that we can install in our PCs. J.

    Which are the benefits of hosting our apps in Windows Azure?

    In essence, according to Ray Ozzie, Microsoft has gained a lot of expertise in the field of datacenters and now it is making one step further by opening its platform to the community, by the means of the Azure platform.

    In concrete, these are the benefits as developers for this new platform:

    -          Scalability by design. If we choose Azure our applications and services will be ready to scale out and run in multiple servers and processors, totally transparent for us.

     

    -          High availability. 24 x 7 or give your money back J. Total redundancy, we do not have to worry about this anymore.

     

    -          Security. The platform is thought to be secured and manage different levels of authentication. Authorization is still not clear for me as well as other policies, but surely it will be securedJ.

     

    -          Updating. Microsoft  is going to manage updates and keep their systems up to date. It is not our problem anymore.

     

    -          Visual Studio Integration. This allows us to work with Visual Studio and have new Project templates, deploy solutions easily, manage configurations, debug (during development phase) etc.

    What is Windows Azure Developer Services Platform?

    In addition to the OS, Microsoft is providing a layer of services that are going to be ‘building blocks’ when building our applications for the cloud.

    In concrete, the services are the following ones:

    -          .Net Services.

    o   Service Bus: it allows us to expose existing services to the cloud, exposing them to third parties or us. The services remain hosted ‘in premise’. Previously known this initiative from MS as Internet Service Bus.

    o   Access control: it allows managing identity federation, making it transparent for the final user the cross between both worlds.  As far as I could see, we can use user & pass, cardspace or digital certificates.

    o   Workflow services: it allows exposing workflows as services to the cloud easily.

    -          SQL Data Services.

    This is what we could say ‘Database as a service’. Through Http, have access to our data, abstracting the concept of database per ce.

    Today it has some limitations; hence, it is worth to understand them before choosing this approach. However, it is interesting to see how through http verbs we can make queries and updates to our data.

    I insist, forget about having a .MDF, the change is pretty dramatic here.

    -          Live Services

    It allows using the services of the live + mesh platform from our applications. I.e.: now I can have a client which consumes data / uploads files to mesh.

    -          Sharepoint Services

    This is what initially was born as ‘Sharepoint Online’. As far as I understood, it allows us to share sites and documents easily with our customers.

     

    And all of these for free?

    By now, at this preview stage, yes! Afterwards, in its final version the prices are going to be known and probably they will be aligned with the resources that we consume. According to Ray Ozzie the prices are going to be competitive with the market.

     

    And what is available right now?

    Today, the platform CTP is available; we can find it in two flavors:

    -          A SDK that simulates Azure in our desktop. This allows us to develop a solution locally, debug it and see how it is going to behave in the final environment when deploying it.

    This SDK is pretty cool.

    Bear in mind that in the final environment we are not going to have debugging, so workaround: include a lot of traces!.

     

    -          In azure.com we can create our solution, including the services mentioned above and for instance, expose a service through service bus.

    I did it and ‘hello world’ worked as a charm!J. Nevertheless, you will need an account for Windows Azure and I guess it is only restricted to PDC attendees.

    I hope that having shared these comments has been useful so as to clarify your thoughts about this platform. Despite there is lot of information nowadays, sometimes it turns a bit difficult to understand how these pieces work together.

     

     

  • Agility - CREATED DATE & LAST MODIFIED DATE TRIGGERS

    It is common that for certain tables in our DBs we include the creation date and last modification date for every row.

    This implies that we have to manually create a trigger for that.

    I found the following script  that saves our time and avoid to write it manually.

    Simply:

    -          Create the columns in our table (here named ‘Created’ y  ‘LastModified’) respectively.

    -          Find & replace ‘TableName’ and  ‘UniqueID’.

    That is. Simple, clear :).

    The script:

    CREATE TRIGGER tr[TableName]CreateDate ON [TableName]

    FOR INSERT

    AS

    UPDATE [TableName] SET [TableName].Created=getdate()

    FROM [TableName] INNER JOIN Inserted ON [TableName].[UniqueID]= Inserted.[UniqueID]

     

    GO

     

    CREATE TRIGGER tr[TableName]LastModifiedDate ON [TableName]

    FOR UPDATE

    AS

    UPDATE [TableName] SET [TableName].LastModified=getdate()

    FROM [TableName] INNER JOIN Inserted ON [TableName].[UniqueID]= Inserted.[UniqueID]

  • Microsoft will soon release 'Windows Cloud' OS, Ballmer says

    Well, it seems that some rumors are becoming true and some old development paradigms appear to be challenged. New ways of conceptualizing and developing software are becoming more and more near.

    I am sharing here a news by Steve Ballmer about the new 'Cloud Windows' which could be out within a month!

    http://www.computerworld.com/action/article.do?command=viewArticleBasic&articleId=9115978

  • Visual Studio 2010 (first look)..

     

    I am sharing an interesting article that gives a first look at what is coming in Visual Studio 2010.

    The complete article is available here.

    I am pasting some points that I consider pretty relevant:

    Overview

    Microsoft is offering a first look at the next version of its Visual Studio integrated development environment (IDE) and platform, which will be named Visual Studio 2010 and the .Net Framework 4.0. There's a lot promised in the new release (expected to ship, duh, in 2010), from improved software testing tools to software engineering modeling capabilities to integrated development and database functions for the application lifecycle management (ALM).

     

     Application Lifecycle Management

    A key goal in VSTS 2010, says Microsoft, is to help democratize ALM by bringing all members of a development organization into the application development lifecycle, and remove many of the existing barriers to integration.

    For the IT manager or CIO, says Mendlen, VSTS will give clarity and visibility into the state of the project throughout the lifecycle, using Team Foundation Server-enabled dashboards customized for her role. 

     

    Agile Tools, Built-In

    Visual Studio 2010 also will sport features to integrate Agile methodologies into the tech stack using Team Foundation Server. 

    The result of right-clicking on a method in the VS text editor, selecting "Generate Sequence Diagram⬦". A UML 2.1.1 sequence diagram depicting the call chain originating from the selected method. 

     

    Putting Quality Earlier in the Development Lifecycle

    In Visual Studio 2010, he says, tools will help create a direct relationship between unit tests that must be run and the code a developer is writing. This "must-do" testing feature, called test prioritization, will get the developers to check their code against at least the highest-priority unit tests.

    So, new in Visual Studio 2010 will be a video-capture feature recording what's going on as the QA professional tests the software.

    This isn't only video capture. These tools (which internally the VSTS team currently calls "Tivo for debugging" but surely will have a marketing-approved name by release time) also record the state of the application as the tester is testing it.

    In other words, when the QA person clicks "Create new bug," the video and rich debug log become part of the record.

     

    Merging of Developer, DBA Roles

    Microsoft is merging the database professional edition. 

    As Microsoft sees it, the roles of the database-centric developer and "regular" developer are less distinct than they once were, so the company is merging its VSTS database and development products. As of October 1, those who belong to the Microsoft Developer Network (MSDN) and currently own Visual Studio Team System 2008 Development Edition or Visual Studio Team System 2008 Database Edition will receive for free the Visual Studio Team System 2008 Development Edition, Visual Studio Team System 2008 Database Edition, Visual Studio 2005 Team System for Software Developers and Visual Studio 2005 Team System for Database Professionals.

More Posts Next page »