One of the best things about using a compiled language over a scripting language is that you get compile-time checks that prevent run-time errors later. ASP.NET MVC uses a hybrid approach by default. Views are compiled at run-time, but controllers, models, and other classes are pre-compiled. MVC also allows you to create strongly-typed views, but since those views aren't compiled until run-time, you don’t always get warned about changes to your models (like property name changes) or other errors in your view until it's running.

There’s a simple way to change this, though, by setting the views to build at ...

If you’ve been using database-first Entity Framework for a while, it’s time you tried code-first Entity Framework. It’s actually much easier to use in a lot of ways, and creates a lot less cruft than database-first EF.

Despite the name “code-first” you don’t actually have to write the model code first before creating your database. If you’ve already got a database, there is a great Visual Studio add-in called Entity Framework Power Tools that will help you do just that. After connecting the wizard to your database, it will create a context class, entity classes, and mappings, all as POCO ...

Capitola, CA  November 25, 2013 - Falafel Software Inc., a Silicon Valley based provider of software development consulting and training services, is pleased to announce the official opening of its new office in Dubai Internet City.

Falafel Software President and CEO Alain “Lino” Tadros will oversee operations at the new office, and is on hand for the grand opening. “Dubai was a sensible choice for Falafel Software,” said Tadros. “Dubai Internet City is a major technology hub for the Middle East and with many of our major partners such as Microsoft, HP, and Accenture already headquartered there, it ...

I ran into these errors on my first go with them, so hopefully I can spare my readers from suffering the same. Let's just set this up and jump right in. This looks like it should work just fine, right?

<div id="app">
</div>
<script id="layoutTemplate" type="text/template">
  <div id="view"></div>
</script>
<script id="viewTemplate" type="text/template">
  hello
</script>

var view = new kendo.View($("#viewTemplate").html());
var layout = new kendo.Layout($("#layoutTemplate").html());
layout.render($("#app"...

My friend and fellow Falafelite Adam Anderson wrote a great blog post a couple of months back about how to create a batch file to open IIS Express from any path. I’ve been using it ever since and loving it, but had a brain storm recently. I thought: “What if I could use this by right-clicking on a directory instead of running a batch file?”

So, I created a simple Windows Explorer shell extension that allows me to right-click any directory in Windows Explorer and open an IIS Express site there. I’ve packaged it in a registry file so ...

Our popular Falafel 2 Go application has helped fans of Falafel keep up to date with latest company happenings right from their favorite mobile devices. Users can read the latest blogs, find upcoming trainings and connect with Falafel via social media.

We’re proud to announce today that the application has been completely rewritten using Xamarin Studio and C# to produce cross platform native applications for iOS and Android. Now as we add new features, we can to do so in half the time.

The original applications were written with the typical native tools: XCode with Objective C for iOS and ...

Falafel Software is proud to be the Sitefinity services leader. We’ve built countless add-ons, written the definitive guide to Sitefinity, consulted on hundreds of Sitefinity projects, helped develop the official Sitefinity certification, and taught over 100 Sitefinity training classes to thousands of individuals.

Chance are that if you work with Sitefinity, you’ve run into Falafel Software before. Maybe you are one of the hundreds of developers who has taken one of our Sitefinity Training classes and given us a
rave review.

Despite the overwhelmingly positive response to our training classes, we know it is tough to ...

In this post we are going to take a look at using UIToolbars and UINavigationBars with iOS 7. I will take a moment to note that although we are using Xamarin.iOS, the behavior and techniques described herein are the same as if you were using Objective-C and Xcode.

We are going to take a look at how the bar controls behave, specifically when your desire is to place them at the top of the screen. One of the challenges that I have experienced, is that much of the Apple documentation and articles on the web regarding the behavior of toolbars ...

[Please see the Table of Contents for this series.]

In this entry, I look at creating menus in an Android application.

Menu1In my last post in this series, I looked at how to pass data from one Activity to another using JSON.  We’ll build on that example in this one, both to have a nice starter app and also to pass the menu choice along within the View Model. 

To get started, make a copy of the previous application (you can download it here).  Now we are going to override two methods in the first activity to create the ...

In my last blog post about migrating ASP.NET Membership users to ServiceStack, I mentioned that it was possible to return user roles in each result row rather than requiring a separate query to return roles. This time I'll go into detail on how to do that both for collections of scalars and collections of complex types.

First of all, you need to be able to escape strings that contain JSV characters. The description of the format and escaping rules are here. Here is a sample implementation of JSV escaping in SQL that uses a numbers table.

create function...

We love ServiceStack here at Falafel. If you're already using it, you know why. If you haven't used it or even heard of it, read the wiki intro to see what all the love is about.

When it comes time to create a real application with ServiceStack, you may be faced with a situation where you already have a lot of user logins already in existence in the former de-facto authentication system for Microsoft developers: ASP.NET Membership. The good news is that as long as you kept to the defaults when it came to how ASP.NET Membership stored user passwords, ...

When working on building large applications, I often find it helpful to prove out a concept or isolate a problem in a sandbox environment.  There are several online tools such as JSFiddle, JS Bin, and CodePen that work really well for trying out code and sharing with others.  However, when using a tool like JSFiddle to test some Kendo UI code, you have to manually enter the external URLs to reference the JavaScript and CSS files.  To save some time, I have shared a public JSFiddle that will give you a jumpstart with the latest Kendo references as ...

[Please see the Table of Contents for this series.]

PassingVMToActivityIn a recent entry in this series, I discussed one approach to preserving state when the application is stopped.  I then received a tweet from my friend Paul Betts of GitHub.com saying “one thing that's super useful is to use JSON.net to stuff off objects in the Bundle.”  Great idea.

Paul was kind enough to send a code snippet and from there I worked up an example.  Let’s review it together...

Begin by taking a look at this original posting on sending string data from one page to another.  In that ...

Falafel Software is pleased to announce a new European partnership with Konstrui, a software development firm building “things for the web”. Konstrui is a Sitefinity Gold Partner located in the Netherlands and will assist Falafel with Sitefinity projects that require a European presence. Konstrui’s existing European customers are certain to benefit from the new partnership as well, as Konstrui will be referring customers in need of Sitefinity training to Falafel’s comprehensive online training options.

Konstrui, was founded by Daniel Plomp in 2008 and has since delivered more than 25 custom Sitefinity solutions. Mr. Plomp is a Telerik MVP and ...

[Please see the Table of Contents for this series.]

RadioButtonsFor the past number of weeks, I’ve slowly been learning Xamarin for Android, as documented in this series.  I’ve been putting in about half a day a week, taking my time, not letting the anxiety of learning this seemingly complex topic overwhelm me.  Until now, I’ve been following along with other people’s exercises, or adapting exercises I found into new material. 

Today, I decided to see what would happen if I set out to write a simple program based on my knowledge of C#/.NET and the little I’ve learned ...

Falafel Software is very proud to announce that our very own Jesse Liberty has won the prestigious Microsoft Most Valuable Professional (MVP) Award for the second time.

The Microsoft MVP Award is given to community leaders who show a deep passion for Microsoft technologies and actively share their knowledge with the technical community. Winning a MVP Award is no small feat. Microsoft estimates that there are 100 million technical community members worldwide but only about 3,800 receive a MVP Award each year; and every year existing MVPs must work to win the award again.

Jesse won his first MVP Award ...

It’s here! The latest edition to our “Sitefinity Nuts and Bolts” line of training books is here and includes all of the Sitefinity 6.1 goodness.

Sitefinity 6.1 Nuts and Bolts is a comprehensive training guide that covers everything from user basics to advanced programming topics. This is the one guide that Sitefinity users, administrators, designers and programmers need on their e-bookshelves. In this new 550 page e-book, readers will enjoy detailed examples and step by step walkthroughs explaining how to use Sitefinity’s latest features.  Learn how to create and edit content, configure and deploy websites, work with page templates, control ...

Thanks to everyone who came out to my session yesterday at DevReach on developing mobile apps in HTML5 and JavaScript using Icenium. I've posted the slides and code examples from the session below. Please feel free to contact me if you have any questions.

Crafting Cross-Platform Mobile Apps with HTML, CSS, and JS in Icenium

 

[Please see the Table of Contents for this series.]

Spinner OpenIn this post, I’ll explore how you might add a Spinner control to your application.  Spinner is one of dozens of controls available to Xamarin.Android applications.  With the latest versions of Xamarin for Visual Studio and Xamarin Studio, adding controls has become very easy – simply a matter of dragging them on to the design surface and setting their properties (though you can still create them directly in XML if you like).

The spinner control, as you can see in the illustration, offers a scrollable list of what are essentially RadioButtons. ...

DevReach is upon us again. Now in its 8th year, the event that sets out to be the premier developer conference in Central and Eastern Europe gets our vote for the top event in the region.

Hosted annually in Sofia Bulgaria, the event has grown year after year. Grown so much in fact, that this year the event had to move to the much bigger Sofia Event Center to support the demand for its top notch technical training. Much of the event’s success can be attributed to the high quality standards that the event organizers at
Telerik uphold. Attendees ...