I just started using SubSonic after Matt used it recently on a project. Setting it up was pretty straightforward, but when I tried to write some test cases using Nunit and tested my class library using the nunit-gui, I kept getting the following error:

“Cant Find the SubsonicService in your application’s config.”

Now if I converted my test class library into a console app, and spit out the results of by subsonic based calls, everything worked just fine.
What I discovered was that if you create a config file with the same name as your Nunit project file and add the subsonic section, everything will work. (Not to be confused with YourClassLibrary.dll.config).

So if your Nunit project is called Leet.nunit you need to create a config file called Leet.config and include the SubSonic configuration sections and then the nunit gui will happily test any code written with subsonic

http://blogs.geekdojo.net/brian/articles/Cropper.aspx

Get it.

 

I have long said that i would take a terrible stomach ache v/s a sore throat and a cold. I have also always asked people their choice, if they had to choose, and almost every person said that they would rather take a cold. Well, after the 24 hour stomach virus I got yesterday, I’ve changed my mind too, I’ll take a sore raspy throat over a stomach ache any day. My wife had it first, and then I got it, we’re trying to protect our 5 month old, we’re not sure how we got it, but I am pretty sure I don’t ever want it it again. I wont go into the gory details, but like I said, I have a whole new respect for stomach and body aches coupled with NAUSEA!

Provided you get the basic character data, you can get information for Items using the link:

http://armory.worldofwarcraft.com/item-info.xml?i=28156

where 28156 would be the itemId from the characterinfo sheet

The XPath for the items would be: /page/characterInfo/characterTab/items

Once you get Item information, you can also get the path to the image…

I don’t know why Blizzard just doesnt expose the Armory via consumable web services, since enough people are already figuring out how to scrape/parse data via web requests.

A real neat service would be to return all items crafted by a character…and the corresponding character that may be wearing said item, or using a bag crafted by someone…

A couple of people have emailed me for it, download it here. Again it just uses a basic webrequest and XPath…. Feel free to use it/extend it/etc, just shoot me a line if you use it.

For some bizzare reason in IE, if you have a single text box and a submit button (even if its within a content place holder, for Master Pages), the Click event will NOT FIRE when you hit enter. In the case of master pages “DefaultButton” will not help you either, however, if you fake out Internet Explorer and make it think another text box is there, it will work. The style attributes should be display:none and visibility hidden. Do not set Visible= false. Today was the first time I actually ran into this problem (It does work with an asp:TextBox unlike this link says though)

I have taken a few more pictures but will upload them later tonight. I didn’t bring the laptop because there are internet ready PC’s available everywhere. Matt and I got here at 7am from the hotel and went to breakfast, where we spent some time talking to the software architect from Fujitsu. The one thing that he told us that really stuck was to “Keep learning”. He said if you fail to keep learning and keep up with the flurry of technologies that are being released you run the risk of becoming irrelevant, especially to other developers because you simply cannot “speak the language”. His team is already in the process of migrating their existing applications to the WPF. Keep sharpening the knife, if you will.

There was a small issue with internet availability this morning, but it has been resolved (That is why I can write this post ;) ). All and all the conference so far has been a positive experience. Scott Guthrie’s “A Lap around Silverlight” has probably been the best session I have been to thus far. We also saw a preview demo of a Managed CardSpace application being developed for online banking authentication by Corillian(now CheckFree) for Wachovia. Pretty neat stuff, although it was quite evident that CardSpace is in its infancy and needs to mature considerably.

The next session we are going to is LINQ. More later.

Some shots Matt took, I’ll take more tommorow:

For Garrison: Holla

Will write more about the day today when I get back to the hotel. I am currently in a session called “A Lap Around Silverlight” with Matt Linder’s hero Scott Guthrie.

Matt and I are in Orlando for TechEd 2007. I will post pictures from the convention center tomorrow. The place is huge. Lots of people here. Swag is decent. There are a lot of sessions we want to go to, we’re going to try to plan out each day the night before.

The drive from Lexington was pretty decent, we stopped a couple of times and drove through Barry. The traffic near the hotel we are staying is pretty bad. The hotel was our 4th choice, the first one being the DoubleTree across from the convention center, which by the way, is gigantic. Our hotel doesn’t have free WiFi either :( , we have to pay $9.95/day for wired access, I got some for today, but from the week there is WiFi at TechEd so it probably won’t be necessary.

Matt and I drove down International Blvd last night looking for food and we saw a group of protesters outside of KFC. Matt of course honked at them and gave them the thumbs up sign. This is the website they had on their protest banner. International Blvd, is pretty much the Harbison of Orlando if you are familiar with Harbison in the Columbia, SC area. Except multiply the traffic by a factor of 5 and add a lot of foot traffic. Our hotel is on International Blvd (the Wyndham) but its got a lot of area so you can’t really hear a lot of noise from the street.

I was looking at the weather back home in Lexington and find it ironic that we are getting hit with rain the day after I had my sprinkler system fixed. By the way, if you ever need any kind of landscape/sprinkler/sod/decks/etc work done in the Columbia/Lexington area, David and Tonya at Live Oaks are awesome.

The World of Warcraft Armory provides a plethora of data about any given character on any given realm. The armory itself will return a pretty xml document provided you alter the standard request url that has a ‘#’ in it. Removing the # and viewing source in a browser gives a nice xml document that can be easily parsed

So your standard request would look like : http://armory.worldofwarcraft.com/#character-sheet.xml?r=Kil’jaeden&n=Vagh. View the page source, you wont see much. Removing the # however makes life much easier. Once the xml document was available via a web request, parsing it was easy enough. The only thing I had to do was set the UserAgent property of the request, without it being set, for a reason I cannot explain, the response received was the entire content page including the entire page starting with the html tag. Excluding the # however, fixed(?) it.
In anycase, I wrapped the code into an ASP.net webservice which can be called here

Screenshots:

Another point worth noting is the way Blizzard constructs its image url’s on the armory, the basic format is gender-race-class, so a male (0), dwarf(3) priest(5) would be 0-3-5.gif. This image url is exposed in the webservice. The interesting thing I found was, if you look at the Race and Classes that map to numbers…

enum Race
{
Human = 1,
Orc = 2,
Dwarf = 3,
NightElf = 4,
Undead = 5,
Tauren = 6,
Gnome = 7,
Troll = 8,
BloodElf = 10,
Draenei = 11
}

enum PlayerClass
{
Warrior = 1,
Paladin = 2,
Hunter = 3,
Rogue = 4,
Priest = 5,
Shaman = 7,
Mage = 8,
Warlock = 9,
Druid = 11

}

Race 9 and Class 6 are left out….hmmm…

Next Page →