NEW RELEASE: Virtual Earth JavaScript Intellisense Helper

I am happy to announce that we have a new release of the Virtual Earth JavaScript Intellisense Helper to bring Intellisense in sync with the new Virtual Earth Map Control 6.1.  In addition to 6.1 compatibility, we also made the following enhancements:

  • Consolidated all scripts into a single VEJavaScriptIntellisenseHelper.js file for better portability
  • Updated Default.aspx to point to the 6.1 Map Control
  • Updated Default.aspx.js to explain how to get intellisense everywhere for a page level map variable
  • Added a readme.txt with history

The quick turnaround is a huge testament to the hard work of the devs on this project.  Although I spent a good set of hours coordinating, writing a little bit of code, and "building" this release, the majority of the work was done by the community in their free time!

We haven’t figured out a way to unit test Intellisense:) or an automated way to validate the helper against the SDK so there is always a chance we missed something.  If you you find any bugs or missing pieces, please file a work item at http://www.codeplex.com/VEJS/WorkItem/List.aspx.  You can download 6.1.041708.1040 here.

VE JavaScript Intellisense Helper bug & workaround

A bug has been discovered when using the Virtual Earth JavaScript Intellisense Helper where JavaScript Intellisense fails to surface in a very common scenario.  The scenario is when you have declared a page level map variable.  You will get Intellisense in the JavaScript function where you instantiate the map variable.  However, you will not in other functions:

image 

In the example above, you would get Intellisense for map in GetMap(), but not in Find().  The problem is that Visual Studio 2008 JavaScript Intellisense engine does not know that GetMap() gets called before Find().  Therefore, there is no way to know that the map variable used inside the Find() function is an instantiation of the VEMap class.  We are investigating the best guidance on how to handle this scenario in Visual Studio 2008. 

On the surface, the workaround seems simple.  You just need to make sure the map variable is a page level instantiation like so:

image 

Of course, this poses a problem at runtime because VEMap doesn’t have access to the ‘myMap’ div yet.  That’s the whole reason people put their map init code in window.onload, body.onload, or pageLoad() for ASP.NET AJAX based solutions.  So what to do?  For now, here is what I am doing and what I have checked-in to source control for our upcoming release that will be in sync with the Virtual Earth Map Control 6.1:

image

The good news is that you really don’t have to comment/uncomment while you are developing.  The code above will "work" as is.  I say "work" because you will get an annoying script error for the "var map = new VEMap();" line of code, but the rest of your page will function as expected.  You just want to make sure you fix things for production:).  Although this is a little bit annoying, I think it is small price to pay for getting JavaScript Intellisense for the Virtual Earth Map Control.

SCREENCAST: Exposing/Consuming RSS/ATOM using WCF 3.5 & Silverlight 2

In this screencast, I show you how easy it is to expose RSS and Atom feeds using the new Web Programming Model (REST) features, classes in the new System.ServiceModel.Syndication namespace, and LINQ to SQL in the .NET Framework 3.5.  Then, you will see how you can use classes from the System.ServiceModel.Syndication namespace to consume RSS and Atom feeds using Silverlight 2.

Screencast: Exposing/Consuming RSS/ATOM using WCF 3.5 & Silverlight 2

Source code: WcfSyndicationLinqToSqlSilverlight2.zip

Virtual Earth Map Control 6.1

The control has been releases / is publicly available.  Chris Pendleton has the details in his post titled New Virtual Earth API Release – Virtual Earth 6.1.  The Virtual Earth Interactive SDK & full Virtual Earth SDK have not been update, but the updates should be out some time today.

Now that it is out, we will begin work on updating the Virtual Earth JavaScript Intellisense Helper to be in sync with any updates to the 6.1 API.

Technorati Tags: ,

WEBCAST FOLLOW UP: Geospatially Enabling SharePoint with IDV Solutions’ Visual Fusion Suite

Thanks to everyone who attended.  Thanks to Scott Caulk from IDV Solutions for being a guest presenter.  You can find Scott’s deck here.  Scott also asked I post the following links for those of you who want further information:

IDV Solutions Website

Visual Fusion Product Brochure

As always, you can view a recording of the webcast using the original Geospatially Enabling SharePoint with IDV Solutions’ Visual Fusion Suite registration link.  The recording should be available within 24 hours.  I’ve also added it to My Recorded Webcasts.

Technorati Tags: ,

Service Factory Modeling Edition for Visual Studio 2008

During the recent Public Sector Developer Conference in Washington, DC, I was asked about tools support, beyond the class designer, for modeling WCF services.  My answer was to use the Service Factory Modeling Edition for Visual Studio 2008 from the patterns & practices team.  Here’s a quick screenshot of what the design surface looks like:

clip_image002

 

You will also want to check out the community site at http://www.codeplex.com/servicefactory.  The community site contains hands-on labs for both using and extending the Service Factory, discussions with customers and field, known issues, and roadmap information. In the near future the site will include presentations, demonstration videos, and community contributions.

WEBCAST: Geospatially Enabling SharePoint with IDV Solutions’ Visual Fusion Suite

Microsoft Office SharePoint Services 2007 (MOSS) is rapidly approaching the 100 million licenses sold milestone and SharePoint consulting services are white hot.  IDV Solutions’ Visual Fusion software extends SharePoint to create a visual composite application platform, empowering users and the enterprise to consolidate data and services surfaced in SharePoint and then compose them in the context of location and time.  In short, Visual Fusion geospatially enables SharePoint.  This webcast will inform the Microsoft developer community about the capabilities of Visual Fusion, the primacy of location and time in organizing information, and how to quickly create compelling visual composite applications.  An application will be created from the ground up, combining structured enterprise data (SharePoint Lists & Libraries, SQL Server stored procedures) with unstructured workgroup data (Excel files, KML files, and SHP files), cloud-based data (KML feeds, RSS feeds, and WMS feeds, Map Point Web services, Virtual Earth), and ad hoc contributions from the user (map annotation).  The audience will see how the combination of Visual Fusion and SharePoint results in a geospatial content management system, how portal services (Search, alerting, the business data catalog, etc.) can be leveraged to supercharge visual composite applications, and how an RIA front-end will engage, create buy-in, and facilitate collaboration among users.

When

Wednesday, April 09, 2008

2:00P-3:30P EST (11:00A-12:30P PST)

Register at this link:

http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032373601&Culture=en-US

Technorati Tags: ,

SCREENCAST: Silverlight 2 DIGG Sample

Scott Guthrie has a great eight part series titled First Look at Silverlight 2 where he walks you through building a Silverlight 2 sample app from scratch.  The walkthrough highlights almost all of the key features of Silverlight 2 Beta 1.  The walkthrough is so comprehensive that I have been using a slightly modified version of it for my Silverlight 2 presentations.  Since I am a big fan of seeing vs. reading, I asked Scott if it would be ok if I turned his written walkthrough into a video walkthrough delivered as a Channel 9 screencast.  Scott gave me the thumbs up so I put together what turned out to be a three part screencast.  Here are the direct links for each part:

Silverlight 2 DIGG Sample Part I

Silverlight 2 DIGG Sample Part II

Silverlight 2 DIGG Sample Part III

I hope you find it useful!  The source code for the app is available at http://cid-1f72da7294089597.skydrive.live.com/self.aspx/Public/Silverlight%202/MyDiggSample_Silverlight2Beta1.zip

Technorati Tags: