ChristianASP.NET

Donations

Web Hosting at ChristianASP.NET is FREE! However, donations are accepted and greatly appreciated.
God bless!

Favorite Verses

And God is able to make all grace abound to you, so that in all things at all times, having all that you need, you will abound in every good work.
-- 2 Corinthians 9:8

Whatever you do, work at it with all your heart, as working for the Lord, not for men, since you know that you will receive an inheritance from the Lord as a reward. It is the Lord Christ you are serving.
-- Colossians 3:23-24

Free ASP.NET Web Hosting and Developer Resources

Welcome and thank you for visiting ChristianASP.NET!  The mission for this site is to be a light in the online community for ASP.NET Web development and related technologies.

ASP.NET Security Vulnerability 

Microsoft has released information on a critical security issue in ASP.NET.  You can read more about the issue at the following links.

This issue affects both ASP.NET and ASP.NET MVC web sites.  Microsoft does plan to release a patch to fix the issue.  However, it is important that you take the recommend workaround steps to secure your ASP.NET web site until then.

If you use mojoPortal CMS for your website, please read the following posts and take steps to upgrade and secure your site.

Consequently, this website runs on mojoPortal and was overdue for an update.  The old theme was not compatible with the latest version of mojoPortal, so it is currently running one of the out-of-the-box themes.

Wednesday, September 22, 2010 12:04:00 AM Categories: ASP.NET ASP.NET MVC

"Must Have" Criteria for Your Career 

I receive a lot of emails from recruiters, and I always thank them for writing, provide referrals when I can, and wish them the best on their candidate search. I recently received an email from a recruiter that caught my eye. He asked, "As you look ahead to potential career opportunities, what are the 'must have' criteria that you will be using to determine which opportunity is the right one for you?" Here are my thoughts:

A work environment that

  • regularly challenges its employees,
  • asks its employees to step out of their "comfort zone",
  • inspires self-improvement and entrepreneurial spirit,
  • fosters team building,
  • trusts and empowers its employees,
  • values integrity and honesty,
  • believes in having fun,
  • encourages community service and giving,
  • and where its employees have faith in what they are building.

I know that each of these things are as much my responsibility as my employer's. My hope is that I'm doing my part to promote these values, and leading my sphere of influence to adopt them as well.

What values or criteria are "must haves" for you to be satisfied where you work? What are you doing to see these "must haves" become a reality?

Wednesday, August 25, 2010 8:52:05 AM Categories: Career

New Video Series: ASP.NET MVC For the Rest of Us 

Joe Stagner over at ASP.NET has created a new video Series titled ASP.NET MVC For the Rest of Us. This series is geared towards those who are either coming from traditional ASP.NET Web Forms or who are new to the ASP.NET platform. Looks like a great series to help users dive into ASP.NET MVC programming.

Monday, May 10, 2010 8:42:40 PM Categories: ASP.NET MVC

Support for .NET 4.0 and MVC 2 

One thing I forgot to mention in the previous update is that along with the new servers, there is now support for the latest .NET Framework 4.0, MVC 2, UrlRewrite, and other new features.  If interested, please feel free to contact me to have your web site configured.

Thursday, April 29, 2010 8:20:27 AM Categories: .NET ASP.NET Hosting

Server Migration Update 

Over the last couple of weeks all accounts have been migrated to new servers. There have been a few hiccups, mostly missing configuration of some special-case accounts that were set up a little differently than normal accounts. If you have any issues or concerns with your website, please contact me.

Email Update

As stated in my previous email notifying about the server migrations, plans are still being made to move away from email hosting. The burden of spam has simply become to great to manage. If you haven't already, please check out Google Apps for Domains. Google's email hosting is fantastic, and I've been using it for years for my own domains.

Tuesday, April 27, 2010 11:31:29 PM Categories: Hosting

Thoughts on DevLink and Local Developer Community 

I spent the last few days at my first DevLink conference.  I regret not attending these all along.  Incredible value for the money. Most of the sessions I attended were very good, and a few were downright awesome.  I got to know a few people, meet a few "rock stars" in person, reconnect with several people that I've worked with in the past, and participate in some great conversations.  I learned about some "shiny new toys," and received some practical insight into the tools and processes I already use.

More importantly, I came away challenged by several things that struck a chord with me, culminating with the final panel discussion on "Has Software Development Become Too Complex?"  This discussion was recorded by .NET Rocks! and I look forward to listening to it again once it's published. I recommend you listen to it as well.

I was challenged to think more about the importance of the local developer community.  In the last few months I've attended a few "User Group" meetings in my area.  The speakers were hit-or-miss.  Honestly, I've been thinking the long drive wasn't worth it.  However, I was asking the wrong question.  The question isn't "what can I get out of this?" but "what can I do to make this better?"  Get more involved in your local community.  Connect with other developers.  Learn from the challenges they face and how they are solving them.  Figure out how you can contribute.  It's a win-win situation.  If there's not a user group in your area, then form one.  There are organizations that can help you.

I was also challenged to think more about the need for mentoring.  Jim Holmes had some things to say about this during the panel discussion, so I searched his blog and discovered The Importance of a Mentor.  Jim's article focuses on the benefits of having good mentors, but it is also crucial to our craft that we make the transition and become mentors ourselves.  Becoming a mentor doesn't mean you start teaching and stop learning. I submit mentors learn just as much through the process of listening and expressing ideas.  Mentors also benefit from viewing problems and solutions in new ways through the eyes of the one being mentored.  Another win-win situation.

The barriers to entry to becoming a software developer are increasingly high.  There are so many options available and choices to be made -- tools, platforms, architectures, and methodologies to name a few.  What would you say if someone were to ask you today, "How do I become a programmer?"  Moreover, how could you help lead them from simply having knowledge of tools and languages to becoming a true software craftsman?

Sunday, August 16, 2009 9:22:18 PM

Free Internet Filter: OpenDNS 

I recently discovered OpenDNS, a free DNS service that has been around for a couple of years.  One of the features of OpenDNS is that it can block unwanted Web sites before they even reach your computer.  In case you're not familiar with DNS (domain name service), here is a simple explanation of how it works:

  1. In your Internet browser, you type in a Web site address or click a link to a Web site (i.e. www.google.com).
  2. Your computer sends a request to your DNS to "resolve" the name of the Web site to its IP address.
  3. The IP address tells your computer where to go to get the Web page you requested.

OpenDNS maintains a catergorized list of web sites.  When a computer configured to use OpenDNS requests an inappropriate web site (intentionally or by accident), the site is effectively blocked before it ever reaches the computer.

Normally your DNS is automatically assigned to you by your Internet service provider (ISP).  However, it's not very difficult to change these settings.  And, if you have a high-speed Internet connection that is shared among multiple computers in your home, chances are you can configure your network router to use OpenDNS and every computer on your network will automatically be protected.  OpenDNS will step you through the process.

By creating an account and registering your computer or network, you can customize which categories of Web sites are blocked.  You can also view activity reports, including a list of Web sites that have been blocked.

OpenDNS can also be used outside of the home.  Many businesses, schools, libraries, and other organizations are using OpenDNS to filter and protect users from inappropriate or harmful Web sites.

OpenDNS is not a total solution for Internet security.  It can only block "known" Web sites, although the OpenDNS community appears to be very active in keeping the service updated.  However, OpenDNS is a very useful service that can go a long way to protect your computers, and more importantly your family, from the dangers of the Internet.

Wednesday, September 03, 2008 6:33:42 AM Categories: Free Stuff

DevExpress Giving Away Over 60 WinForms and ASP.NET Controls 

DevExpress is giving away more than 60 WinForms and ASP.NET controls.  I haven't used them before, but it appears to be a great collection.  Registration required.

Monday, August 25, 2008 3:05:54 PM Categories: .NET ASP.NET Free Stuff

Using jQuery with UpdatePanel in a User Control 

Okay, this scenario might not be all that common, but in case someone else out there needs some tips on getting this to work, I hope this helps.  I spent quite a bit of frustration on this one.

I have an ASP.NET web application that uses Microsoft AJAX UpdatePanels and embedded User Controls.  In this particular case, I wanted to try out jQuery in one of my User Controls.  The User Control uses an UpdatePanel, and the User Control itself is dynamically loaded in an UpdatePanel on the parent page.  Here are the things I ended up doing in order to get jQuery and UpdatePanel to play together.

Registering jQuery Scripts

Since I'm not planning to use jQuery everywhere in the Web application, I need a way to register the scripts I need from the User Control.  In my search, I came across a Rick Strahl post Implementing a jQuery-Calendar ASP.NET Control that was exactly what I needed.  This post led me to his earlier UpdatePanels and ClientScript in custom Controls for the necessary ClientScriptProxy code, which is a great utility class for registering any client scripts, not just jQuery. However, I started getting a Sys.ScriptLoadFailedException, which led me to Sys.ScriptLoadFailedException when adding ScriptReferences.  To work around this, I added the following to the end of my jquery.js script file (and other script files I was registering).

if( Sys && Sys.Application ){ Sys.Application.notifyScriptLoaded(); }

Client Script for the User Control

My User Control is dynamicaly loaded, so simply putting a script block in the .ascx template doesn't work in this scenario.  Also, the standard jQuery $(document).ready doesn't work.  I believe it's because of the way the DOM is manipulated by the UpdatePanel.  So, borrowing a couple of ideas from Giving Precendence to a Specific Asynchronous Postback and jQuery Event Binding vs. ASP.NET AJAX UpdatePanel, I created another script file named init.js that contains the following code:

function ApplicationLoadHandler(sender, args) {
  // InitScript is a custom function 
  // registered from the User Control
  if(typeof InitScript == 'function')
    InitScript();
					
}

if( Sys && Sys.Application ){ 
  Sys.Application.add_load(ApplicationLoadHandler);
  Sys.Application.notifyScriptLoaded(); 
}

In my User Control's code-behind, I need to override the OnPreRender to register my script files and custom script block.

protected override void OnPreRender(EventArgs e)
{
	base.OnPreRender(e);

	// *** MS AJAX aware script management
	ClientScriptProxy p = ClientScriptProxy.Current;

	// *** Register resources
	this.RegisterResources(p);
}

private void RegisterResources(ClientScriptProxy p)
{
  p.RegisterClientScriptInclude(this.Page, this.GetType(), "_jqueryjs", this.ResolveUrl("~/client_scripts/jquery.js"));
  p.RegisterClientScriptInclude(this.Page, this.GetType(), "_initjs", this.ResolveUrl("~/client_scripts/init.js"));

  StringBuilder sb = new StringBuilder();

  sb.AppendLine(@"

function InitScript() {
  // control-specific code goes here
}

");

  p.RegisterClientScriptBlock(this.Page, this.GetType(), "_init_" + this.ID, sb.ToString(), true);

}

Now all I have to do is customize the InitScript() in my code-behind to do useful things with jQuery.

Hope this helps!

 

Friday, June 20, 2008 9:07:00 AM Categories: Ajax ASP.NET

Flip Mino Review 

Rumors of my demise have been greatly exaggerated.  I've had several ideas for blog posts recently, but just haven't sat down and wrote them out.

My outdated video camera is nearly 10 years old, so I've been thinking about getting a replacement.  The Flip Ultra has been on my radar screen for quite a while.  With Scott Hanselman's glowing review and the release of the 2nd generation Flip Mino, I was finally convinced.  As an early Father's Day gift, I ordered one online and it arrived today.

Wow.  I just can't get over how much I like this gadget.  It's no bigger than a point-and-click camera, it's ridiculously simple to use, and the software to manage your movies is right on the camera.  You just plug the camera into any PC (or Mac, apparently) and go.  Within minutes of opening the box I had recorded my first short videos and transferred them to my PC.  I like the fact that it comes with a TV RCA audio/video cable so I can show videos when visiting friends or family.  I haven't tried all the features, but it appears that you can easily convert, upload and share videos online, too.

As other reviewers have stated, the light sensor does an excellent job of quickly adjusting to any light conditions.  Video quality is passable, but it's certainly good enough for casual use.  To me, the built-in rechargeable battery in the Flip Mino is well worth the premium over the Flip Ultra.  I'm not too crazy about the touch-sensitive buttons surrounding the big, red record button, but that's not a show-stopper.  I'm also impressed with the short time it takes to power up the device and start recording.

So far, I am absolutely thrilled with this purchase.  I once read (regarding photography) the best camera is the one you have with you.  With the Flip Mino's small form-factor and easy-to-use features, I see my family and I recording and sharing a lot more memories in our future.

Tuesday, June 10, 2008 9:27:02 PM Categories: Gadgets
Page 1 of 2 1 2 > >>
Copyright © 2007 David Neal