posts - 78, comments - 79, trackbacks - 84

My Links

News

View Anthony Trudeau's profile on LinkedIn

Add to Technorati Favorites

Article Categories

Archives

Post Categories

Other Links

First real VS 2005 solution started

I bit the bullet today and started my first 2005 solution.  I'm not talking about a “coding for fun” project.  I'm talking about an enterprise solution.  Specifically, to handle automated shipping and receiving for RFID.

I had started the solution with VS 2003, but decided to convert what I had (currently only two projects and about 30 classes) based on my experiences so far and the information from the RFID framework provider, Globeranger.  Although, the iMotion EdgeWare framework does not support CLR 2.0 libraries the “development testing on 2.0 and [the] products seem [to] work.”

GlobeRanger was cautious in the e-mail they sent me indicating that “QA has not tested and ... have not certified [the framework].”  And the representative said, "Certification will occur on .NET 2.0, [we] just don't have a date yet."  They do have a utility that will allow the applications and services to run on CLR 2.0.  The utility will be invaluable for testing.  It was also made clear that only version 5.1 of the iMotion EdgeWare will work with CLR 2.0.

I feel confident about my decision, because it will be months before I complete the development and testing for the solution.  And in the meantime I want to take advantage of all the new features in VS 2005.  What better way of learning the tools then with a real-world solution?

The conversion went off fairly well.  The only user input was to specify a backup directory.  I think it would have been useful to specify a destination location instead.  As it is, I had to move the converted files to a new directory underneath the Visual Studio 2005\Projects directory.  (I don't care what anyone says.  I like the My Documents folder hierarchy.)  At the end of the conversion you have the option of viewing the conversion log.  I chose to view the log, because I like to know what is going on.  I was pleasantly surprised to find the log displayed within Visual Studio in an appealing format due to the XSLT and CSS files behind the scenes.

There's really not much involved in the conversion.  According to the log it converted my SLN file and my CSPROJ files.  It didn't touch any of the code files.  I'm not sure if that's because of my code, or because of the conversion in general.  The application compiled although with warnings.  The warnings included:

  • Use the command line /KEYFILE instead of using the AssemblyKeyFile attribute in the ASSEMBLYINFO.CS file
  • Thread.Suspend depricated
  • Thread.Resume depricated

The first was easy to fix, the second is taking a little more work to achieve the result that I want.

Print | posted on Monday, November 28, 2005 12:52 PM | Filed Under [ .NET ]

Feedback

Gravatar

# re: First real VS 2005 solution started

Your lock() statement in QueueRequest won't actually do anything to the execution of the ProcessRequests() method since it doesn't also have a corresponding lock statement guarding access to the queue:

RegistrationRequest request;
lock( m_requestQueue) {
request = (RegistrationRequest) m_requestQueue.Dequeue();
}
SendRequest( request );

Also, you have a potential race condition between the end of your inner while loop and your Thread.Sleep: the inner while loop could complete, the QueueRequest method could be called and insert an item into the Queue and it could discover the processing thread is currently running so not attempt to interrupt it. Then your processing thread could wake up and sleep even though there was an item in the list.

You could use Monitor.Pulse as a notification mechanism instead of manually interrupting the thread.
11/28/2005 1:32 PM | Adam
Gravatar

# re: First real VS 2005 solution started

Thanks. I actually need to think about the flow on this a little, so I removed the code.
11/28/2005 7:08 PM | Anthony Trudeau
Gravatar

# re: First real VS 2005 solution started

Oh and by the way, I'm excited to hear about some real-world usage of iMotion on .NET 2.0 and am looking forward to reading your weblog further :)
11/28/2005 10:50 PM | Adam Sills
Gravatar

# re: First real VS 2005 solution started

I got the shipping notice last night for the 5.1 version. I need to figure out where to install it...
11/30/2005 7:04 AM | Anthony Trudeau

Post Comment

Title  
Name  
Email
Url
Comment   
Please add 8 and 4 and type the answer here:

Powered by: