BlogEngine.NET: The First Stumbling Block
Let me start off by saying that BlogEngine.NET is a fantastic piece of software with a ton of awesome features and is relatively easy to use.
That said, I’ve spent nearly all of my free time in the past month building a custom site using the BE.NET framework as a base, and while it’s been frustrating at times (I basically had to teach myself C#), I learned a lot about programming just by getting into the core and messing around and seeing how things are linked up and organized. It’s been working great on my local machine (first hooked up to my local MySQL database and then hooked up to the hosted MySQL database) and I was really excited to upload it and get it going.
I fired up good ol’ FileZilla, took a deep breath, and hit “Upload” and watched with mounting anticipation as the 700-some files in the queue slowly (actually, really quickly, but it seemed slow) dwindled. Finally, it was time! I opened my browser, typed in my URL, and held my breath as IE7’s thinking circle went round and round.
That’s when disaster struck.
The YPOD popped up with an unfamiliar error message: “Unable to find the requested .Net Framework Data Provider. It may not be installed.” Exqueeze me? What does that even mean?? My first instinct was that there was something wrong with my Web.Config file, so I checked there. Some idiot (read: me) forgot to change over the local DB string to the hosted DB string. Fixed. Uploaded. Ta-da!….. ? What? Still not working? Oy… this is going to be a long night…
Well, I did some digging and found out that my instincts were correct and that there is probably an issue with my Web.Config. I found a CodePlex thread by someone who got the same error and tried their solution, but to no avail. I also created my own thread, but as of this writing, no one has responded to my cry for help. I found this tutorial by Al Nyveldt and my spirits were raised again because he is one of the authors of the damn software, but again they were dashed when his tips were also unable to help me out. I even downloaded his sample Web.Config and applied it to my own.
I downloaded the latest MySQL/ASP.NET connector (18.104.22.168 as of now), placed it in my /bin folder and modified the versions in the Web.Config to match (they are 22.214.171.124 in the Web.Config). Still nothing.
With frustration and utter lack of any idea where to turn, I emailed both Mads Kristensen and Nyveldt beseeching them for advice on what to do. I don’t expect an answer (as I’m sure they get 290352268 emails a day from guys like me who are too dumb to figure out their software), but hopefully they will help me out.
Unfortunately, there is no happy ending to this story as of yet… no magical fix that I can present to you that will get you out of the same rut. But maybe I’ve pointed you in the right direction where someone’s suggestions may help you. If you have any ideas, please please please post them or email me. If it works, I will definitely post your solution with a link to whatever site you want. I would not be surprised if it’s a one-line fix in my Web.Config that makes me smack my forehead. With a hammer.
Thanks in advance for any help you can provide!
EDIT: I’ve received a bit of help from the wonderful nberardi and we (he) came to the conclusion that my host is running a pre-5.1 MySql/ASP.NET connector (they are running an outdated MySql.Data assembly) [126.96.36.199, to be exact]). The 5.1 release included support for Roles and Memberships, so anything older than that will not work with this engine. Should they update it (or I go elsewhere) I will keep you posted.
8/30: SOLVED! But you’ll never guess what the problem was. You ready for this? My hosting company had a stray character in their Machine.config file that was right by the DbProviderFactories node… no, I’m not kidding. Everything is working fine now… I will post more on this tool later.