Saturday, July 31, 2010    
Blog  
OpenLight Blog
Author: Ian T. Lackey Created: 6/2/2009 10:17 AM
Open Source @ Your Service

So this is not a full post (hence the Preview suffix to the title), but wanted to put something out there to let everyone know that I will be posting an update to the Silverlight SEO stuff sometime next week. Monday I am speaking at the St. Louis .Net user group meeting on this topic. After the talk I will be posting my notes and code used for the demo. The code provided will approach this topic from the standpoint of building a new site as opposed to the previous posts, which focused more on upgrading a current site. Currently you can view the demo online here: http://silverlightseo.openlightgroup.net . This site is all data driven content that is shared between Silverlight and ASP.Net. In the near future the site will be filled with all of the details of how it is built and how to incorporate the same strategies in your sites to improve search engine indexing for sites using Silverlight. Keep an eye out over the next few days as the content will start...

Read More »

This is a very short and sweet post about dynamically switching the ItemTemplate property of a Silverlight ListBox at runtime. First we will start with a little background of what led to this article.

I am currently working on an application that contains a list of pediatric patients and their parents. I was recently given a requirement to display a parent name to one group of medical professional and the patient name to another group. However, either group should be able to toggle this display to allow searching on either the parent or patient.

Knowing that in Silverlight, simple is usually the correct answer, I figured this should in fact be simple. Thankfully, I was correct and after only a few minutes I had the following solution working.

If Me.SearchByParent.IsChecked Then Me.PatientListBox.SetValue(ListBox.ItemTemplateProperty, _ Me.Resources("PatientParentListBoxTemplate")) Else Me.PatientListBox.SetValue(ListBox.ItemTemplateProperty,...

Read More »

Like many other developers I have been excited to see that WCF RIA Services has gone beta and now comes with a Go-Live license. After this release my team at Wash U began developing a few applications using the new RIA Services bits. We have been very impressed with the productivity increase as well as several other features that RIA provides over the previous straight up WCF services have offered in the past.

All was going well, until it came time to publish the first application to the staging (user testing) server. Upon deployment the application started displaying the “Initializing Application” progress control for close to a minute.

image

...

Read More »

In college my instructor taught us that it is not always knowing the answer but knowing where to find it. In the mindset, this post is simply a list of other blogs, twitter accounts \ lists and books that I have found helpful in the recent past. Hopefully these will point you to information that you need to build great software, enjoy your work (or at least experience less stress), and keep up on the latest news regarding development.

Admittedly I have been almost 100% focused on Silverlight development, so most of these resources will reflect this. However, there are a few in the list are are more general. Also, for some of the more experienced developers, I realized that a few of these links are may have you wondering why they are including. Like the MSDN site, doesn’t everyone know about that? Well, maybe, but necessarily. So I included them for the new developers or people looking to get started.

(…these resources are in no particular order…)

Favorite Blogs (other than the OpenLight Members...

Read More »

As you may have heard, Microsoft has created their on CDN for delivering JavaScript libraries. Beginning in ASP.Net 4 the ability to use scripts hosted on the CDN will be built into the ScriptManager control. ScottGu demonstrated how this will work in one of his blog entries. In addition to hosting their own AJAX library, Microsoft is also providing the jQuery library for download.

I am assuming that many of us have not jumped on this bandwagon as of yet This, I’m sure, is partly due to the fact that the MS AJAX libraries that are available are all beta editions slated for release with ASP.Net 4. However, the jQuery script that is currently provide is the current production release of the library and can be used today. When the next version of ASP.Net is released the number of users with cached copies of jQuery...

Read More »

I have recently been practicing playing the bass again and during one of the practicing session my friend had suggested some features for a digital metronome. We had used a few JavaScript based ones; however none of them had a few helpful features. These features included: Adjustable tempo, support for different beats per measures, a visual counter displaying the current count of the measure, the ability to allow for multiple measures, the ability to have two different volumes for the tick sound that plays for each beat, the ability to mute the tick for specified beats of a measure and allow the metronome to be run from the computer without being connected to the internet.So since we could not find a single metronome that supported these features, I decided to build one using Silverlight, figuring that it would be a pretty simple exercise. It turns out I was right, well for the most part.

Obviously the most important feature of a metronome is to keep time, this turned out to be so easy it was almost ridiculous....

Read More »

Maybe I am a bit to “old school” but I still prefer to use the ASP.Net Web Site project type as opposed to the ASP.Net Web Application project type. I believe this comes from the time spent developing Classic ASP sites and being used to the more “Windows-Like” development of WAP. I am not saying that I will not eventually switch to the “Dark Side” and honestly I already have embraced the Compiled Module project template for my recent DotNetNuke development. However, for now I still have several existing ASP.Net Web Sites that are in use and will not be changing to the compiled project paradigm anytime soon.

This has never been an issue and I had never even considered it to be a drawback until I started learning RIA Services. It didn’t take long to notice that the RIA Services template only allows for the WAP style projects. So I started to wonder how to go about adding RIA to existing web sites. I put together a quick example of how to structure a solution to enable RIA on a stand ASP.Net Web Site. The projects look this:

 image

RegularWebSite: Obviously this is the regular non-compiled site, created using the ASP.Net Web Site template. ExampleRIAServicesApplication: This is a project created using Silverlight Navigation Application template. ExampleRIAServicesLibrary: A Silverlight class library project that was created using the WCF RIA Services Class Library project template. The template also created the next project automatically. ExampleRIAServicesLibrary.Web: A .Net class library project that was created using the WCF RIA Services Class Library project template.  

Once these projects were created I started setting up the Domain Services that will be hosted on the ASP.Net site. To do this I first added the following references to the ExampleRIAServicesLibrary.Web:

image

I then added a LinqToSql model to the project and created a Domain Service to expose the entities in the model. (To keep this post focused, I will not be discussing how to create the domain services. There are plenty of great resources on how to create these services, write custom queries, enable authentication and so on. This article is meant only to explain how to use RIA Services with a non-compiled ASP.Net site.) Once I had these services built (or at least started), I built the ExampleRIAServiceLibrary.Web project and verified that the code was generated in the ExampleRIAServiceLibrary project. If the code is generated, then the RIA Services link is functioning properly and you can move on to wiring this library projects to the application projects.

image

Note: If the code is not generated verify that the Silverlight class library is linked to the .Net library via the .Net RIA Services link project property.

image

 

First I added a reference to the ExampleRIAServiceLibrary project in the main Silverlight application:

image

Then I added a reference to the ExampleRIAServiceLibrary.Web project in the RegularWebSite project:

image

The final step to link all of the projects together is to link the ExampleRIAServicesApplication Silverlight application to the web site:

image

Now that all of the projects are linked properly, I built the solution to verify that all of the files were generated and\or copied to the appropriate locations and no errors where reported. Everything built properly so we are ready to published right? Well, actually not yet. There are a few web.config changes that need to be made to allow the Domain Services to function properly. All of the changes that need to be made should be found in the App.Config file of the ExampleRIAServiceLibrary.Web and can be copied directly into the RegularWebSite web.config. First make sure that the necessary connection strings are copied over so the Domain Services can access the data store. The two RIA Services specific settings are as follows:

Under system.web->httpModules  add the following entry: 

add name="DomainServiceModule" ...

Read More »

I created a package and posted it to the CodePlex site associated with this series of articles. The package aims to allow you to easily implement the strategy outlined in Part 2 (Solidifying a Strategy) of these posts. This article will discuss how to integrate the code in the package with your existing ASP.Net site to allow links to be mapped between current urls and new Silverlight Deep Links. With the page mappings in place, you can effectively move your entire site to Silverlight while maintaining the links already indexed by the search engines. This also allows users that have not installed Silverlight and search engine bots to continue to use the original ASP.Net site.

A correction is needed for some information in the previous post. Apparently, I was mistaken about needing to require the...

Read More »

So thanks to the instructor (Kevin Grossnicklaus) of a Silverlight class I just attended, I have finally started to use twitter. Believe me, this was not an easy decision for me to make. I have seen many good people fall prey to the evil that is social networking sites. I must admit, I have made my fair share of jokes about the “tweeters” out there and had to eat a little crow when I told my wife that I signed up for an account.

The reason I was so resistant to twitter is all of the utterly useless information that is posted to that site. For example, I have no need or desire to know that someone is looking at a cloud shaped like a rabbit. I am sorry, but please do not clutter the information super highway with debris such as this. I mean, if I am next to you and you say “hey that cloud looks like a rabbit” that is great I will check it out. However, if you are in China and I am in the USA why do I need to know that?

...

Read More »

 So I do know that "ironic" is the right word for that fact that my first post after ... way too long ... is entitled "Remember Me?" but it fitting in more than one way.

Michael brought this post to my attention : www.dotnetnuke.com/Community/Blogs/tabid/825/EntryId/1784/a-new-solution-to-an-old-problem.aspx dealing with DotNetNuke's issue of not respecting the "Remember Me" checkbox when logging into a site.

Read More »

  
Copyright 2009 by OpenLightGroup.net   |  Privacy Statement  |  Terms Of Use