I just concluded a weekend of work that got me, well, nowhere really. I've been working on a XBAP (Xaml Browser APplication) for what's going to be my new World of Warcraft guild, Six Minutes To Release. I will be honest. At first, I had absolutely no clue what I was getting into.

XAML is basically Flash on steroids (AKA the .NET framework). It's cool because you can easily run XAML-based applications on the desktop or through the Internet. Since World of Warcraft is an Internet-based game, the obvious choice was to serve up my app from a website.

So I started playing around. I figured out pretty easily how to make a nice banner that rotates images smoothly. I learned how to add some pretty kick ass looking buttons. I've got a nice system that will dynamically load and unload controls as traditional pages or as dialog boxes.

Then I decided I wanted to connect to a database. Oi.

Since a XBAP can't connect directly to a database, WCF - which I've already played around with for Backup - was the obvious choice. Minor problem, though. WCFs are severely gimped in XBAPs. So, what I thought was a wonderfully built news display that ran perfectly in Visual Studio was nothing more than trash code. Wonderful.

It took hours, probably close to 10 or 12, of research and wrestling with a couple of bugs in Visual Studio before I finally got it working right. What went wrong along the way?

  • The flashy banner that I made randomly decides to not compile. I have to clean and rebuild the solution, and then cross my fingers to hope it doesn't happen again.
  • I didn't realize that return types from WCF's can't be interfaces, because you can't serialize an interface.
  • My service wouldn't run on Ox. Granted, Ox is not a server, but it does have IIS7 and everything you need installed to run a WCF service, except for some reason it was emitting text/xml while WCF clients expect application/soap+xml. Never got that working, I just abandoned it after about 2 hours of research and sent it straight to Understudy.
  • One of the WCF gimps is that you can't use wsHttpBinding unless you have certain things setup which I wasn't about to research. Changing it basicHttpBinding works... except if you have already defined the Service Reference on the client. If you have, it'll keep complaining about wsHttpBinding until you remove the service reference and re-add it.


The good news is that I finally got everything working, and have my first page mostly operational. Even though I've seemingly made no progress this weekend, my knowledge of WCF and XBAP has grown quite a bit, and now all of the pieces are in place for me to take off running with this one. I think I'm going to have a lot of fun with this.

Comments

Add Your Comments

roncli.com Blog
This is my blog where I give my thoughts and opinions on various topics and share my creative endeavors with the world. I run two personal blogs, but combine them here for ease of access.

Blogger - My oldest blog using the Blogger platform contains posts full of opinions, gaming, and code.

Tumblr - Tumblr posts are all about my creative side, containing music, videos, writings, and updates on my web creations.

You can select a category below to view the latest post, or browse thorugh the posts using the navigation found at the top and bottom of each post.
Categories
Coding (167)
Life (138)
Gaming (118)
Music (64)
World of Warcraft (48)
roncli.com (42)
Software (36)
Servers (29)
Hurricane Rita (27)
Six Minutes To Release (27)
Screenshot (25)
Hurricane Ike (24)
Projects (24)
Silliness (21)
Trax in Space (21)
Cent (19)
Crystal Space (15)
OSMusic.Net (14)
Blog (13)
Editorials (13)
LibWowArmory (13)
Lyrics (13)
roncli Productions (12)
VB.NET (12)
Descent (11)
LibWowAPI (10)
Descent 3 (9)
Due Process (9)
Backup (8)
CTG Music (8)
Node (8)
Overload Teams League (8)
Six Gaming Podcast (8)
ASP.Net (7)
Azure (7)
Buffalo (7)
League of Legends (7)
NWS (7)
Rendr (7)
SETI@Home (7)
The Nightstalker (7)
Video (7)
Diablo III (6)
Hard Drives (6)
Logs (6)
Overload (6)
Windows (6)
BOINC (5)
Cent Credits (5)
Cent Main Theme (5)
D3DSN (5)
Descent: Underground (5)
FreeBSD (5)
Google Desktop (5)
Google Earth (5)
Outpost Music (5)
Ron's Bronze Plays (5)
Sports (5)
UPS (5)
Birthday (4)
Buffalo Sabres (4)
Constellation (4)
Everytime (4)
JavaScript (4)
Preview (4)
Pwned Print (4)
roncli's Dumbass Award (4)
San Antonio (4)
Sigh of Excitement (4)
Six Gaming (4)
Steam (4)
Stripped Down (4)
The Observatory (4)
trac (4)
Twitch (4)
Visual Studio (4)
Winamp (4)
AJAX (3)
All In My Head (3)
Blackjack (3)
Chess (3)
Crypt of the NecroDancer (3)
D3TL (3)
DCL (3)
Gate (3)
Given Up (3)
Guitar (3)
Inspiration Edit (3)
jQuery Default Button (3)
MAME (3)
MediaTagConverter (3)
ModPlug (3)
NeonXSZ (3)
NetHack (3)
Numbers (3)
Paper (3)
PHP (3)
Rawr (3)
Sift (3)
SQL Server (3)
Tumblr (3)
Vision (3)
Year in Review (3)
AM Browser (2)
Asana (2)
ASP.Net RSS Toolkit (2)
Bicycle (2)
BlizzCon (2)
Cheevos FTW! (2)
Crazy Browser (2)
Descent Champions Ladder (2)
DMTB (2)
Docker (2)
Elbow (2)
Eternally (2)
Evans Blue (2)
Fire In My Heart (2)
Games (2)
GitHub (2)
GTR (2)
Houston Astros (2)
How To Play (2)
Hurricane Katrina (2)
iPhone (2)
IRC (2)
IsItUp (2)
Las Vegas (2)
Legs (2)
LibBeImba (2)
Minnesota Wild (2)
Miss Driller (2)
Module Sixteen (2)
Monitor Resolution (2)
NeKo (2)
New Zepsi Industries (2)
Niagara Falls (2)
Novus Compo (2)
Pittsburgh Penguins (2)
Poker (2)
Pwned Cars (2)
Reinstall (2)
Remake (2)
Retro (2)
roncli Productions Intro (2)
San Francisco (2)
San Francisco Rush 2049 (2)
slammy (2)
Sleep (2)
Solar (2)
SoundCloud (2)
Stress (2)
Strings (2)
Tempurpedic (2)
The Editor (2)
TNS Raw (2)
TopCoder (2)
Troupe (2)
w.bloggar (2)
Wedding (2)
XAML (2)
You (2)
Zepsi (2)
#modarchive Story 2 (1)
#occupygregstreet (1)
Absolute C++ (1)
Achaea (1)
Acronyms (1)
AdAware SW (1)
Adobe Acrobat (1)
AdventureQuest (1)
Alaska (1)
allen one (1)
AMD Settings (1)
Analyze (1)
APIs (1)
app.config (1)
Art (1)
ASSP (1)
Audiosurf (1)
Aveyond (1)
Awakening (1)
Bellaire (1)
BitTorrent (1)
Black Ox II (1)
Blackberry (1)
Blender (1)
Blogger (1)
BOINC Synergy (1)
BoincView (1)
Boom Bitches! (1)
Browserify (1)
Bullseye (1)
Byline (1)
CAD-KAS PDF Reader 2.4 (1)
CAPTCHA (1)
CDBurnerXP Pro (1)
CherryOS (1)
ChessCli (1)
Chick-Fil-A (1)
Child Controls (1)
clones (1)
ColdFusion (1)
Come Back To Me (1)
Compo (1)
Constellation Main Theme (1)
Cooking Lili (1)
Core Decision (1)
Crystal (1)
Databinding (1)
DataGrid (1)
DataGridView (1)
Deadly Drums (1)
Decade (1)
Dell (1)
Demogorgon (1)
Descent Rangers (1)
Diabetes (1)
Diamond Problem (1)
Doge2048 (1)
Doom's Day (1)
Double Buffer (1)
Dr. Jeffrey Masters (1)
Drama (1)
Dreamweaver (1)
Dudley's Dungeon (1)
Einstein@Home (1)
Ellon in the Dark (1)
Elon Musk (1)
EveryDNS (1)
Evolution (1)
Eyes (1)
Fedora Core 6 (1)
FeedPage (1)
Fiddler (1)
FlowDocument (1)
Foobar 2000 (1)
Foxit Reader (1)
Galveston (1)
Geocore (1)
GMail (1)
Google Calendar (1)
Google Chrome (1)
Google Pages (1)
Google Wave (1)
Grid (1)
grl (1)
Grooveshark (1)
Grunt (1)
GTR2 (1)
Guitar Solo (1)
Hackers (1)
HCC (1)
Hearthstone (1)
Heroes of the Storm (1)
HomesickAlien (1)
Houston Aeros (1)
ICallbackEventHandler (1)
If Paige Wins (1)
IIS (1)
Inno (1)
Internet Explorer (1)
Interview (1)
iPad (1)
Iron Chouquette (1)
Irrlicht (1)
Jaded (1)
jQuery UI (1)
jQuery UI Scroll Menu (1)
JW Player (1)
Kado Kado (1)
Kaspersky (1)
KFOS Inner Space Radio (1)
Know What (1)
Kromaia (1)
Let It Ride (1)
Let's Encrypt (1)
Let's Play (1)
LibWowHeroes (1)
LifeCast (1)
LINQ to Entities (1)
Linux (1)
Liquid Wars (1)
ListView (1)
Loading (1)
Lukan Schwigtenberg (1)
Mac (1)
MadTracker (1)
Mastodon (1)
Melbourne (1)
Melt (1)
Message From Beyond (1)
Micro Center (1)
Mistakes (1)
Monitor (1)
Mouse (1)
Moving (1)
Mr. Driller (1)
MSDN (1)
NASCAR SimRacing (1)
Network (1)
New Year (1)
olmod (1)
On Fire Series (1)
Opalus Factory (1)
Open Labs (1)
Open Source (1)
Operation Payback (1)
Overwatch (1)
PearPC (1)
Phony (1)
Piano (1)
Pingle (1)
pogo.com (1)
PowerStrip (1)
Programming (1)
PSP (1)
PXO (1)
Quadra (1)
Radeon (1)
Radio Shack (1)
Rant (1)
RedHeat (1)
Reject (1)
Release (1)
Religion (1)
Rendr Template (1)
Renegade (1)
Retrovirus (1)
Revival Productions (1)
RFLXT (1)
RIP (1)
RockMelt (1)
Scott Hanselman (1)
Self-Destruct Sequence Podcast (1)
Showsan (1)
Silverlight (1)
Sitemap Generator (1)
Smoke (1)
Sol Contingency (1)
Sound Blaster Audigy (1)
Speedrun (1)
Spelling (1)
SQL Reporting Services (1)
SSL Certificates (1)
Stanley Jakubowitz (1)
Starbase Arcade (1)
Starcraft II (1)
Starting All Over (1)
Story (1)
Sublevel Zero (1)
Swiss (1)
Tetris (1)
Thanksgiving (1)
The Crossroads (1)
The Time Now (1)
The Wight to Remain (1)
Time and Date (1)
Toronto (1)
Torrent Keeper (1)
Total Bollocks (1)
Trans-Siberian Orchestra (1)
TraxSurf (1)
Trillian (1)
Twitter (1)
Typing (1)
Ultimate Boot CD (1)
UpdatePanel (1)
US Interactive (1)
Video Bob (1)
ViewState (1)
Vince Young (1)
Vincent Lau (1)
Vocals (1)
Voyage (1)
Voyager: Ascension (1)
Walter Savitch (1)
Warlords of Draenor (1)
Weather (1)
Web3 (1)
Westward (1)
What Do I Know (1)
WikiLeaks (1)
Windows Defender (1)
winLAME (1)
Winter Classic (1)
Word Field (1)
World Record (1)
Worst Things in the World (1)
WPF (1)
Xamarian (1)
XBox (1)
XM Radio (1)
XML Web Services (1)
Yahoo! Pipes (1)
Yes (1)
You Are Not Alone (1)
Share This Page
Social Media
Ronald M. Clifford
@roncli @mastodon.social

It's my swan song!

Reply Boost Favorite
Ronald M. Clifford
@roncli @mastodon.social

Is that... T-Pain?

Take a good hard look at the mother fucking float.

Reply Boost Favorite
CatSalad🐈πŸ₯— (D.Burch) :blobcatrainbow:
@catsalad @infosec.exchange

Did you know that Pavlov's hair was famously soft and silky?
It's because he conditioned it. :ablobcatlurk:

Reply Boost Favorite
Ronald M. Clifford
@roncli @mastodon.social

"People suck. Don't be people." -roncli, 2019. πŸ™ƒ

Reply Boost Favorite
Ronald M. Clifford
@roncli @mastodon.social

And when the groundhog saw its shadow, the people declared:

"FOUR MORE YEARS OF STRESS EATING!"

Reply Boost Favorite
Ronald M. Clifford
@roncli @mastodon.social

I told you, son!

Reply Boost Favorite
Ronald M. Clifford
@roncli @mastodon.social

Boss: "We need to come up with a number of hours it will take to do this super big project."

Me: "Do you want that number written out, or can I use exponential form?"

πŸ™ƒ

Reply Boost Favorite
Ronald M. Clifford
@roncli @mastodon.social

I guess you CAN'T do it with True Value. cnn.com/2024/10/14/business/tr

Reply Boost Favorite
Ronald M. Clifford
@roncli @mastodon.social

Former 2 time world champion DogPlayingTetris becomes the first player to ever rollover the level counter in NES Tetris, performing what's known in the community as "Rebirth". Final score: 29,486,164, 4216 lines, level 347 (256 + 91)... all huge world records.

Reply Boost Favorite
Ronald M. Clifford
@roncli @mastodon.social

Back row... Mother with screaming infant, 300 lb linebacker, and me. Or what's left of me.

Reply Boost Favorite
Solitha
@solitha @mastodon.social

🚨 James McGovern 🚨

Reply Boost Favorite
Ronald M. Clifford
@roncli @mastodon.social

I'd also love a 6 hour layover overnight instead of taking the red eye I was going to take and be 7 hours later getting into Cleveland than I wanted, why do you ask?

Reply Boost Favorite
Ronald M. Clifford
@roncli @mastodon.social

Why yes, I'd love to leave at 4:40 to get to the airport at 6:20 for an 8:20 flight that got delayed to 9:05 which is too late for my connection so now I'm on a 10:20 flight instead. Why do you ask?

Reply Boost Favorite
Ronald M. Clifford
@roncli @mastodon.social

Twitch getting SOMETHING right for once...

Reply Boost Favorite
Ronald M. Clifford
@roncli @mastodon.social

You may just be a po'boy, but I love you. β™₯️

Reply Boost Favorite
Ronald M. Clifford
@roncli @mastodon.social

I've never had as much fun on comms for a Tetris match as I did tonight with NinjaOfNinjas for the silver bracket semis and finals. What a show!

Reply Boost Favorite
Ronald M. Clifford
@roncli @mastodon.social

Logan Paul didn't qual for silver unfortunately. πŸ™ƒ

Reply Boost Favorite
Ronald M. Clifford
@roncli @mastodon.social

I'm not done! I'll be casting the later rounds of the silver bracket today at 6:30 PM Pacific at twitch.tv/classictetris3. Cya there!

Reply Boost Favorite
Ronald M. Clifford
@roncli @mastodon.social

I'll be live casting qualifiers today for CTWC at twitch.tv/classictetris2 at 1 PM Pacific and twitch.tv/classictetris3 at 3:30 PM Pacific. This year's CTWC is the craziest yet so don't miss it!

Reply Boost Favorite
Ronald M. Clifford
@roncli @mastodon.social

Public restrooms are funny.

Reply Boost Favorite
Ronald M. Clifford
@roncli @mastodon.social

The golden state, more like the blackened state. πŸ”₯

Reply Boost Favorite
Ronald M. Clifford
@roncli @mastodon.social

Just a note to everyone out there who still believes 2020 hasn't ended that today is Unquinquaginember 21st, 2020.

Reply Boost Favorite
Ronald M. Clifford
@roncli @mastodon.social

Burritos can be used for bribing if necessary. 🌯 :)

Reply Boost Favorite
Ronald M. Clifford
@roncli @mastodon.social

@shanselman Who at Microsoft do I have to bribe to fix ADO so that those of us on dark mode who copy/paste text from one task to another can do so without our friends on light mode seeing dark text on a dark background?

Reply Boost Favorite
Ronald M. Clifford
@roncli @mastodon.social

I updated the blog post with a statement from Revival. While I'm not particularly happy with Revival's decision, I understand their motives. It's just a shame that it was someone from Interplay that had to go and do this. "By games for gamers" my ass.

Reply Boost Favorite
Ronald M. Clifford
@roncli @mastodon.social

Damn, got another Tetris world record! This time in the arcade variant developed by Atari. 6,008,005 points, 5,386 lines, round 363. Be warned, it's nearly FIVE HOURS. twitch.tv/videos/2131759212

Reply Boost Favorite
Ronald M. Clifford
@roncli @mastodon.social

I certainly didn't have "Overload but with web3 features" on my 2024 bingo card. WTF did Revival Productions just do?

roncli.com/blogger/39495275106

Reply Boost Favorite
Ronald M. Clifford
@roncli @mastodon.social

@solitha New rule: cat tax. For every pun you post or repost, you're now required to pay the tax of posting one cute cat video.

Reply Boost Favorite
Ronald M. Clifford
@roncli @mastodon.social

Today was a special day. I scored 1,016,221 points in classic NES Tetris, the first time I broke the 999,999 maxout barrier.

With that maxout, I became the oldest person to get their first ever maxout at 46 years 319 days.

After I scored that, I learned that today would have been 7-time Tetris world champion Jonas Neubauer's 43rd birthday.

I am FILLED with incredible emotion tonight.

clips.twitch.tv/AverageImporta

Reply Boost Favorite
Ronald M. Clifford
@roncli @mastodon.social

"I'm Sorry, What?!" The biggest bailout in the history of Descent II! youtube.com/watch?v=GLlTk7wa59A

Reply Boost Favorite
Ronald M. Clifford
@roncli @mastodon.social

β€œBART anime merch" are three words that I would not have expected to go together, but here we are. railgoods.com/bart/anime/

Reply Boost Favorite
Ronald M. Clifford
@roncli @mastodon.social

Does anyone else sing the chorus to "Cherish" by Kool & The Gang to themselves whenever they play or watch streams of Balatro? Or is that just me?

Reply Boost Favorite
Ronald M. Clifford
@roncli @mastodon.social

I'm fact that's what Lingo needs: a "phone" block. The clue is an incorrect autocorrected form of the answer. πŸ™ƒ

Reply Boost Favorite
Ronald M. Clifford
@roncli @mastodon.social

It's like my phone knows I've been playing Lingo. I typed in "exited" and my phone was all:

⬜️ EXCITED ------
β–ͺ️
β–ͺ️

Reply Boost Favorite
Ronald M. Clifford
@roncli @mastodon.social

@arborelia Bag-les.

Reply Boost Favorite
Ronald M. Clifford
@roncli @mastodon.social

A comparison of the classic Tetris and Descent communities. Not a post I write lightly, either.

roncli.com/blogger/37031578090

Reply Boost Favorite
martin
@luftlesen @mstdn.jp

Aptiz played #Pentis again. In the beginning you can see roncli asking in the chat for the right version. About an hour later, he broke the #PentisRankings record with 60K ! Congratulations roncli πŸ† πŸŽ‰
twitch.tv/videos/2052528360?sr

Reply Boost Favorite
Ronald M. Clifford
@roncli @mastodon.social

Reply Boost Favorite
Ronald M. Clifford
@roncli @mastodon.social

Yeah, it's season 11. But the OTL Season 6 highlight reel is up, this time Fireball has taken the reins! Check out this video jam packed full of kills, deaths, silliness, and Sirius puns. youtube.com/watch?v=SXstLVjnaGo

Reply Boost Favorite
Ronald M. Clifford
@roncli @mastodon.social

Over on , someone retweeted sympathy for the people being laid off today...

...and then said that Amazon Games was hiring. You know, the one that just had layoffs in NOVEMBER.

Honestly? Tech sucks right now.

Reply Boost Favorite
Join roncli on Discord!
Join the roncli Gaming Discord server for discussion about gaming, development, and more!
roncli.com Media Player