There are many secure websites out there that provide useful information but do not have a public API to access it's data. A prime example of this is the LinkedIn website. You might love to gather some info from LinkedIn, but their promise to deliver a public API has yet to come to fruition. The problem is, the pages with all the good data are secure, requiring the user to log in before accessing these pages. Let's say we want to scrape this data from these pages programatically? We need to auth
In the recent relaunch of this site, I created a new custom skin for Subtext. Since this is just a personal site, I threw things together fairly quickly, testing along the way with Firefox3 and IE7. Once I was getting closer to complete, I took a look at my new site in all the usual browsers, including IE6. Ugh, it looked terrible. I gave it some thought and made some decisions about supporting IE6. I'm not going to support it. Not on this site and not on others that I have a say in. I'm not tal
I posted yesterday about setting ASP.NET Browser control properties differently for different browsers by using device filtering syntax for setting the properties. I've received some questions via e-mail about that post so I wanted to follow up on some additional things I've found on this topic.
Isn't it great when you work with a tool day after day and you thought you knew everything there was to know about it? Then find out something that has been there for a long time that you somehow missed? Here's two things that have been in ASP.NET since version 2.0 that I somehow missed until just recently.
If you have a website that maintains a list of events for users, it is a great idea to allow users to selectively add those events to their own calendar. Using automation from a website with something like Outlook is a bad idea. It would be blocked by the browser's security and your users might use something else for their calendar. Fortunately, many main-stream (most?) calendar applications, such as Outlook, Windows Calendar on Vista, and a whole lot more, support the iCalendar specification.
In my last post I mentioned some of the podcasts that I've been listening to that have inspired me as a .NET developer. I thought it would be a good idea to start a list of all the podcasts that have taken over my Zune lately and some that I am planning on checking out.
I came across this list on CodeProject of SQL Queries to analyze SharePoint details and usage. This is an awesome list. Granted it does bypass the SBS object model so isn't the recommended route, but still a great list of queries you could use to make reporting on your SharePoint sites a breeze
I started this blog in August of 2003, almost 3 years ago. I've made 176 posts in those 3 years. I don't post too often to my blog because I'm not all that big on posting stories about my kids, wife, dog, etc - although those do come in every now and then. Anyway, even when I have lulls where I am not posting as much, my traffic seems to stay pretty consistent. I'm actually amazed at how much traffic I get, especially when I consider how often I get around to posting (big thanks to all the visit
After my last post on adding items to the page head in ASP.NET 2.0, Karthik Nataraaj asked if there was a way to add meta tags as well. You are in luck Karthik. The HtmlMeta class is provided for just that. You can easily create a HtmlMeta object and add it to the Controls collection in the HtmlHead class exposed via Page.Header.
I am easy to please when it comes to small and simple things that make my life as a developer easier. For example, I came accross something I had not noticed before in ASP.NET while reading a post from Dave Burke. The HtmlHead class exposed by the Page class as Page.Header. I love this. It makes it so easy to get to, and manipulate the header attributes for a page. A simple act of changing the page's title, style, etc before was a pain. Now it's just setting a few properties.
There's something about the Web 2.0 buzz that's forced itself into the fore front over the last year that's never quite sat right with me. Milan Negovan recently made a post titled “Con 2.0” which summarized my own feelings on the subject perfectly (which Milan seems to do quite often). The problem with the hype around Web 2.0 is that there seems to be a real push to solve a problem I don't have. Sure the bells and whistles are cool and have a lot of “wow-factor” to them, but I seldom come accro
I was speaking to a friend the other day about relaying e-mails via a local SMTP server. There was some problem with some code and the e-mails were not going out. In cases like this one of the first things I like to do (especially when you don't get to access the SMTP server directly, but you're relying on some other IT person to set up the relaying permissions correctly) is to manaully connect to the SMTP server and test sending out an e-mail or two.
Something that's been one of the most interesting reads for me lately has been Dave Burke's set of posts detailing his war stories about migrating an ASP.NET 1.1 project to ASP.NET 2.0. Good stuff. ScottGu even got involved and had Dave send him a sample project so he could help determine what was causing the train to stall when leaving the migration station.
One thing that I just can't stand, is when a web page I build looks different in FireFox than how it looks in IE. Well, who doesn't?! The thing that really sucks is that there are things build in to how ASP.NET works that will cause this to happen. So unless you're checking your pages in FireFox (and other browsers) than you can bet they'll render quite a bit differently than in IE.
I hate that, and it seems that every time I (or a co-worker) gets the error “Unable to Start Debugging on the Web Server” on a machine when attempting to debug an ASP.NET project, I have to scramble to remember what to look at. Here's a few things that has worked for me to get things working so you can debug your ASP.NET project when/if you ever get this error.
If you visit my blog via a browser, you'll see that I added a “Recent Posts” section in the top left corner. This actually has some humor to it since I've been on a 82 day unplanned hiatus, so none of my posts are really “recent”. But, none the less, I wanted to share how I added that. I did absolutely no programming or changes to the blog controls. Just a few things to set up with NewsGator Online services and a single line to add to your blog (you can even add it in the “news” section if you u
Many times you might need to perform some action on an ASP.NET postback based on the control that caused the postback to occur. Some scenarios for this might include a form with many regions, each having it's own CustomValidator and the ability to perform a postback when a button for the section is clicked. Another scenario might be to set focus back to the control that caused the postback.
Popular browsers, such as Internet Explorer and Firefox support something called Auto-Complete. You've seen this many times. You go to a online form and as you start to type in fields you get a drop-down showing values you've typed in that field before. This feature can be turned off, but it really is a useful feature and can save you a lot of typing when entering redundant values.
Just caught on Rob Howard's blog about some incredible new addons for Community Server 1.0
After my last post, I decided to do what I outlined to throw together a quick search page for my blog.
I'll admit I was excited when the Google API was made available for public use. Nice idea and opens up some cool new ways to integrate searching into your applications or websites. That is, as long as you don't exceed the allowable 1000 queries per day as per the developer license. It was easy enough to use but it was still not enough to get me that fired up about using it. I have that same excitement now about the MSN Search (beta) site. But this time things are different. There is no daily que
Setting focus to controls in your ASP.NET application is a part of giving your end users the feel that they have come to expect. Making your web applications act more like Windows applications is a key to success (IMO). While setting focus to controls is a very small part in achieving this, it does get you one step closer to having a polished web application that your users will love to use. It will be taken for granted, but something this small should be since it is expected beha
When the TextMode property of an ASP.NET TextBox is set to Password the value set in the Text property will not display at runtime. This can be a pain, however it is actually by design to prevent the unmasked password from being displayed in the HTML source of the page. While the security reasons are good to not display the masked password value, leaving it unmasked in the source, it is also necessary at times to display the masked value in the TextBox.
I guess I don't need to do this frequent enough to remember this because I always seem to forget. To comment out a server control from your aspx page you cannot use <!-- and -->. Obviously, this is a server control, so you use server side comments
Maybe my expectations were too high. Maybe I misinterpreted what they were doing. Who knows. But I was really expecting something great from Telligent System's Community Server and it feels like it is lacking. Don't get me wrong, it is some exceptional work. Well, each of the Community Server applications are exceptional - by themselves. However, with the combination of great minds like Rob Howard (ASP.NET Forums), Jason Alexander (nGallery), and Scott Watermaysk (.Text) I was expecting the inte
I just re-read article from earlier in the year on evolt.org again that outlines 10 tips to make your pages load faster. I like to re-read stuff like that to remind myself of the things I am getting lazy about.
One of the cooler VS.NET addins that I've come accross. The CopySourceAsHTML addin allows you to copy source code in VS.NET as syntax-highlighted HTML. I've always used a tool I made to convert the code to formatted HTML - but this makes so much more sense.
Within the last hour Visual Studio 2005 Enterprise Architect BETA 1 just showed up on MSDN subscriber downloads. Everyone else please stop their downloads until I get mine down ;-) - Community previews are cool and all, but now the real fun starts!! Woot.
Milan Negovan has started a series of posts on his blog where he is analyzing and redesigning the microsoft.com start page. If you've ever had a peek at the microsoft.com site in Firefox, Opera, etc, then you will have noticed that it looks quite a bit different than in IE. But it's not just about cross-browser compatibility. Milan takes the time to walk you through how to design the site right using current web standards. It really is, as he puts it, a web standards showcase. It's not just talk
One of the cool new things introduced in ASP.NET 2.0 is Master Pages. Master Pages give you the ability to define a master page layout and look that is used throughout a site to give a consistent look & feel to all pages. Any updates or changes to the look & feel of the site is done in only one place - the Master Page. Something that might be useful is the ability to dynamically load a master page at runtime, for example based on user preferences or to implement a simple skinning ability for a s
Often with web applications you want to track traffic statistics to get a general idea of the number of visitors viewing a resource. Whether it be a web page, an RSS feed, an e-mail or whatever, you might want an inconspicuous way to determine that it has been "viewed". A common tactic for tracking visitors is the use of what is known as web bugs. Web bugs are small 1x1 pixel images that will be put on a web page or e-mail that will log information about the requestor each time it is requested o
Over the last year or so I've been trying to make by web UIs more CSS driven and not use tables as often as I do. But it is an ongoing battle. Who ever said that old-habits die hard wasn't kidding. The use of tables comes out so natually when I write my markup that it is second nature. It is the way I have always done web UI layout. Problem is that tables are inflexible, have a tendency to get messy fast as you get deeper and deeper embedded tables, but worst of all they are slow for the browser
There are some really cool changes coming in ASP.NET's web.config files that I am really excited about. I'll just point out a few that I've used (I hate going back to 1.1 because I can't use them). The web.config file in ASP.NET 2.0 allows you to set a lot of things that will apply everywhere in your site.
When I work with web services I want things to work the same way as if I were working with a local layer that returns objects, not data. I don't want my code outside of the service to even see the data, just the objects that represent the data. Who doesn't? There are some things to know when it comes to consuming objects returned by a web method and they're not what you might expect on first attempt.
Scott Mitchell (of 4GuysFromRolla.com) has a cool new article up on MSDN that has a pretty complete and detailed dip into URL Rewriting. An awesome article - Scott really walks you through the entire process. This article will give you everything you need to implement URL Rewriting in your ASP.NET apps.
I came across an interesting article on CodeProject today. The article discusses an attribute based strategy for automatic population of instance fields and properties on an ASP.NET page from parameters supplied via properties of the Request object (.QueryString, .Form etc...). A very interesting approach. I am not endorsing using it and haven't really considered the performance impact that this might have - but what I found interesting was the approach. I really like to see people think outside