← Back to all blogs

Posts tagged with 'evangelists-2'

February 2011 Speaking

After a relatively slow January, my travel and speaking calendar is picking up again, leading into a crazy March and April.  Here’s where I’ll be for the rest of the month:

Tips for Running a Community Azure Boot Camp

Azure Boot Camps are being held all around the world, but if one isn't being held close to you, you're definitely not out of luck-these events are designed to put on by the community, too.  Brian Prince has done an excellent job of organizing the content and making it easy to put on one of these events.  The recent Azure Boot Camp Pittsburgh was a community event, and I came away with some notes I think will help other people who want to hold their own Azure Boot Camp.

Windows to the left of me, Silverlight to the right, you’re not stuck in the middle

It’s a busy February, there are at least three free learning tours going on right now.  There are many opportunities to learn Silverlight, Windows 7, MVC and jQuery.  Check the schedules and see if there’s an event nearby, then go out and learn something.  At two of these events, we’ve upped the ante a little—you can win a ComponentOne Studio of your choice.  Here are your opportunities:

Recap: CodeMash Influencer Summit

On Jan 11, just prior to CodeMash, a gathering of regional community influencers was held.  This summit featured a panel of four prominent influencers from different language interests, with Jeff Blankenburg moderating.  The bios below greatly shortchange the panelists’ accomplishments

Building multiple column displays in MVC

Looping through a list of objects to display a table of the items is easy in MVC. All you need to do is: 1: <table>

Are you #NotAtCodeMash? Get the swag anyway!

Are you #NotAtCodeMash, but still want the coolest swag?  Act quick and it’s yours!  The first 10 people to follow ComponentOne (so we can DM the winners) and tweet “Less code, more business logic with @ComponentOne http://c1.ms/fAvE3N Please RT” will be sent a swag pack with the same goodies you’d get if you visited our booth.  We have limited supplies at CodeMash, so you may score some loot not everyone gets.  BTW—readers of my blog got this announcement one hour before I tweeted about it.

Solving the “A potentially dangerous Request.Form value was detected….” in ASP.NET MVC

Oftentimes an MVC application needs to POST text back that a user has entered into a text field or textarea. In a project I am working on I am using the TinyMCE WYSIWYG text editor to allow users to write articles. The editor allows for HTML tags such as , , , etc., and when submitting the form I have run across the infamous, “A potentially dangerous Request.Form value was detected” error. So, how do you get around this? You want the user to be able to use some HTML, but you need to secure your site as well from scripting attacks. Enter the [ValidateInput(false)] attribute. Adding this attribute to each of the ActionResults where you are expecting HTML tags to come in, will allow the Controller to continue with the action. This will work most of the time but is not exactly bulletproof for protecting your site. By doing a string.Replace() on the incoming content, and checking for suspicious and/or malicious code, you can secure your site a bit more. 1: [ValidateInput(false)]

POSTing and GETting with jQuery and MVC

The jQuery library has an extensive set of AJAX functions which make it very easy to handle website functionality with all the Ajaxy goodness you’ve come to expect. However there are some gotcha’s when working with MVC and I thought I’d take some time to talk about them. The first thing to remember is to decorate your Actions with the appropriate Http verbs, either [HttpPost] or [HttpGet]. By default MVC 2 only allows [HttpPost] requests when requesting a Json response. Phil Haack has a great article on this at http://haacked.com/archive/2009/06/25/json-hijacking.aspx. In a project I am working on I want users to be able to add other users as friends, see if their friend is online, and if necessary, delete a friend. This jQuery function allows a user to add a friend: 1: function acceptFriend(friendId) {

Uploading photos with MVC

There are many articles online talking about MVC, but not many showing how to upload files. In a project I'm working on I need to have my users upload photographs and wanted them to be able to preview the photo before submitting it. Here's a screen shot of what I'm talking about. The application allows the user to select a photo, which is then previewed. The user can then add a caption and description of the photo. During this first round the Save button is bound to the following jQuery script: 1: function uploadMemberPhoto(elem) {

jQuery and MVC–Part 4, now with Wijmo!

In part three of this series I talked about how to extend jQuery with plugins, went through the steps of writing a plugin, and then demonstrated how to use it in a standard HTML page. I showed you a popular Table Sorter plugin and showed how to initialize it with different options. In this last article I will show you one more plugin, the Wijmo Grid, and how easy it easy to implement it's different options and features. I will also show you some of the cool things that Wijmo can do to help spruce up your web forms and pages. Going back to the Student Course Admin form I've been using for these articles, I am generating a table of student data in an ASP.NET MVC app. One thing I did add since the last article was the ability to filter the students by their first or last name. This was done by adding some JavaScript and an Ajax call which gets a new set of data from the server, then replaces the original table with the new table. 1: function getStudentsByName(elem) {

Thanks Philly XAML!

I have to extend a big thank-you to Philly XAML for inviting me to some talk to you last Thursday.  Shout out to John Angelini for leading Philly XAML, Dave Isbitski and Perficient for the pizza.  I hope all of you enjoyed seeing our OLAP for Silverlight components as much as I did talking about them.  It's not a stretch to say this is my favorite new product, and something I wish I had a year ago in my previous job.