Category

.NET

Read/Write data from/to USB thumb drive on a Windows IoT Core device

By | .NET, Blogs, C#, Fun, IoT, Microsoft, Multi-Device, News, Raspberry Pi, Visual Studio, Windows Universal Apps | One Comment

Currently, universal apps are sandboxed to the point of blocking you from reading/writing data files to a removable USB drive on Windows IoT Core devices. This post will show you a work around if you really need to do this. Now, understand that this is not for store apps. If you submit an app using this work around, it will likely get rejected. However, for internal projects, it will definitely work, and work well. This is a great way of reading application initialization data and writing log data in a test apparatus and laboratory setting. Particularly when a network or…

Read More

One-Time Passwords (OTP)

By | .NET, node.js | No Comments

Years ago, I worked for a customer who provided me with a RSA SecurID device to access their VPN. This was a plastic fob that would display a six digit number on a LCD screen. Every 30 seconds, the numbers changed to a different random six digits. To log into their VPN, I had to provide my username and password, plus the current six digit number displayed on the device. So, even if my password was compromised, an attacker still could not get into their VPN without also having that SecurID device. Today, we simply call this Two-Factor Authentication, or 2FA. While plastic fobs…

Read More

Rewriting URLs to Lowercase in Sitefinity

By | .NET, MVC, Sitefinity | No Comments

Enforcing Lowercase on URLs to Normalize URLs In any web application, it is generally a good idea to make sure that all of your content has only one way to reach them via a user’s address bar in their browser. Whether you accomplish this by using canonical URLs, strict discipline/convention (i.e. “I will never capitalize any directory or filename”, very hard!), or rewriting URLs into lowercase ones, they all accomplish the same goal. Google only sees one URL for content, and your SEO doesn’t take a hit for “duplicate content” like what may happen if you can go to www.example.com/Foo…

Read More
SMTP4Dev Local SMTP

Test Sending Email Without an SMTP Server

By | .NET, ASP.NET, C#, Microsoft, Tools | No Comments

When working on a project, I had the need to locally test the sending and formatting of an email from an application. The only downside is that I don’t have an SMTP server on my workstation, and I wasn’t about to start setting up IIS with all that ceremony. Luckily there are a couple tools that can help with this problem. Neptune The first tool I tried was Neptune. It doesn’t have source code available, but if you need a way to see if an email has been sent, it will show up with a notification in the system tray. You…

Read More
What Branch Am I On?

What Branch Am I On?

By | .NET, git | No Comments

When working on a project that is leveraging source/version control with branching it is always a good practice to know which branch you are currently on.  There is nothing worse than getting in the coding groove and an hour in thinking “What branch am I on?”, only to find out you are coding directly against master/release.  Of course your version control system of choice has a mechanism for letting you know what branch is active.  How this is accomplished will vary by system and, more likely than not, will require you to leave your beloved IDE.  There must be a…

Read More

Widget Template Code Customized the Easy Way

By | .NET, ASP.NET, C#, Sitefinity | No Comments

Sitefinity’s Widget Templates provide a quick and easy way to change how Sitefinity renders widgets, both for built-in content types as well as custom ones. In the backend, it’s just a hop, skip, and a jump away to Design > Widget Templates to access a majority of the templates where you can manipulate the HTML used to render them. Oftentimes, though, you have to do more. Let’s say that, when iterating over a list of news items in the “Titles only” template you want to add a CSS class to some of the items, but not others. This goes beyond…

Read More
Filtering data with the Search Bar

Xamarin Quick Tip – Adding a Search Bar to a UITableView in iOS

By | .NET, C#, iOS, Mobile, Multi-Device, Visual Studio, Xamarin | No Comments

A common bit of functionality required in a mobile application is including some type of search functionality in an application. Typically this takes the form of a search bar along with tabular results. In this article, I will walk you  through adding simple search functionality to a UITableView in iOS. Setting up the project Create a new blank iOS universal application with a storyboard. In the storyboard create a new UITableViewController and assign it the class name of FruitTableViewController. Name the table tblFruit. Finally, change the type of table cell to Basic, and assign it the reuse identifier of FruitCellId. If you have trouble setting…

Read More
Swipe Left on Pineapple

Xamarin Quick Tip – Swipe Left To Delete

By | .NET, C#, iOS, Mobile, Multi-Device, Visual Studio, Xamarin | No Comments

In some projects, it may be requested to be able to swipe left to delete an item in a table. In order to implement this, there is a handy component called SwTableViewCell that provides this valuable functionality.  What is missing however, is decent documentation to get it up and running with Xamarin. In this article, I will walk you through adding this component to an already existing table view. Setting up the project The first thing we need to do is to build an application that has a table populated with some items. Create a new C#, Universal iOS application,…

Read More

Using HandleUnknownAction in MVC Widgets

By | .NET, ASP.NET, C#, MVC, Sitefinity | No Comments

Sitefinity’s MVC widgets are fantastic. They allow untold amounts of customization and enable you to create an MVC framework as complex or as simple as you need. There is a caveat to using them, however: Because the controllers are typical ASP.NET MVC controllers, going to particular pages on your site might make them disappear! There is a simple workaround for this problem, and with this information you can ensure that your Sitefinity MVC widgets consistently display no matter what current state your web site is in. The Problem Say you have a simple custom MVC widget that has a single…

Read More

Accessing Sitefinity Roles in Code

By | .NET, C#, Sitefinity | No Comments

When developing custom solutions in your Sitefinity application, you may need the ability to work with Sitefinity roles. As a developer, you would reach out to the RoleManager that Sitefinity provides, and access the roles from there. However, you may run into an issue where some roles, verified to be a part of your site, are not represented when working with the RoleManager. This post goes into this issue, and shows how to access all Sitefinity roles to work with. Basic Role Access Let’s say you want to list all available Sitefinity roles on your web site. The natural idea…

Read More

Customizing Search Result URLs in Sitefinity

By | .NET, C#, Sitefinity | No Comments

One of Sitefinity’s many features is its search capabilities. Using Lucene under the hood, Sitefinity indexes your site content, both built-in content types and dynamic content types, along with static HTML, and allows you to present organized results to the user. You can customized what is and isn’t indexed among other things. Most of the time, Sitefinity is smart enough to create search result URLs that take you directly to the content in question. If you have “/my-news” as your news page, for instance, a particular article URL might look something like “/my-news/2015/1/1/my-article-url”. The search indexer automatically takes the page…

Read More

A Simple Natural Sort

By | .NET, C# | 5 Comments

If you’ve ever had to sort alphanumeric data, you’ve probably encountered the issue of sort order when letters and numbers are mixed. Here is a quick example:

The first set is using a standard ASCII sort which is sorted correctly, but not what most people expect–shouldn’t a2 come BEFORE a11? What they want is a natural sort which treats letters as letters and numbers as numbers rather than treating everything as an individual ASCII character. There are PLENTY of natural sort solutions out there and some may work better for your particular situation, but I came up with a simple natural…

Read More

Working with Hybrid Forms in Sitefinity Widgets

By | .NET, C#, MVC, Sitefinity | No Comments

Throughout the course of web development, you often find yourself in a situation where you need data input from your user. Scenarios range from a simple contact form, to something as complex as a multi-part job application. In either case, Sitefinity offers multiple solutions. The easiest solution, for the simpler forms such as the aforementioned contact form, is to use Sitefinity’s built-in Forms capabilities. Much like with their pages, Sitefinity Forms provide a very simple, powerful way to create and customize even more complex forms for your site. The resulting data is then stored in Sitefinity, and can be set…

Read More
Creating a new Xamarin iOS Application

Xamarin Quick Tip : Add a Full Color Image to the Navigation Bar

By | .NET, C#, iOS, Visual Studio, Xamarin | No Comments

In iOS the Navigation Bar is not one of the easiest things to stylize. In a recent project, I needed to add a full color image of a logo on the left hand side of the Navigation Bar. Here is how I accomplished this requirement. Setting Up the Project Create a new Xamarin Blank iOS project in Visual Studio. I’ve named mine NavBarFullColorLogo. Creating the Storyboard Once the project has been generated. Add a new Empty Storyboard item to the project, name it Main.storyboard. Open the Info.plist file, and select Main.storyboard as the Main Interface. Open the AppDelegate.cs source file, and…

Read More
Blank iOS Appliation

Xamarin Quick Tip : Setting a UI Table View Background Image

By | .NET, C#, iOS, Visual Studio, Xamarin | No Comments

Full-screen background images are an attractive design feature in many mobile applications. In this article, I will show you how to set an iOS table view background image using C# so you can achieve full screen backgrounds on your Table View Controllers in your application. Creating the Solution Open Visual Studio, and create a new Blank iOS Application. I’ve named mine BackgroundImage. Creating the Storyboard Once the solution has finished generating, add a new Empty Storyboard to the solution, name it Main.storyboard. Next we will need to assign the storyboard to our application launch sequence. To do this open the info.plist file, and under…

Read More

Relating Data in Sitefinity Content

By | .NET, C#, Sitefinity | No Comments

In my previous post discussing properties on custom content, I delved into some of the more complex types that can be properties, including classifications and related media. This post will get into the most complex type to work with: Related Data. This is taking existing custom content types and allowing other content types to have a property that relates one to the other. Relating data can happen with built-in content types (e.g. News), extend across other module builder modules, and even be self-referential! On top of all that, you can even create a custom content type that is the parent…

Read More

Complex Custom Properties for Sitefinity Content

By | .NET, C#, Sitefinity | No Comments

In my previous post I talked about basic access of custom properties in Sitefinity. Namely, strings and numbers. Those alone cover a lot of what you’d use when it comes to custom fields on built-in content types and custom content types. In this post, however, we’re delving into some of the more complex custom properties that can be associated with Sitefinity content. Like in the previous post, we’ll cover both how to query by a complex property (where applicable) and how to fetch the content of the complex property. Classifications (Tags, Categories, Custom) Fetching Tags and Categories within Sitefinity are…

Read More

Valid Polygons and Ring Orientation with SQL Spatial

By | .NET, Entity Framework, SQL Server | No Comments

SQL Server spatial types make it easier to work with geographical data, but it is important to understand ring orientation or “handedness” when working with polygon data. On a recent project, I was building a web-based tool for users to draw a polygon to define an area that would be used for finding points within its bounds. Each click captures the coordinates which is combined into a WKT (Well-Known Text) Polygon. Everything was working great until I drew a polygon that returned this error when I tried saving the DbGeography object: 24205: The specified input does not represent a valid geography instance because it…

Read More
Disable ReSharper's inconsistent naming evaluation

Disable ReSharper’s inconsistent naming evaluation for an entire file

By | .NET, ReSharper | 3 Comments

As I have stated in previous posts I am a huge fan of JetBrain’s ReSharper.  I am also a stickler when it comes to naming conventions.  So ,when I have to consume someone else’s API that uses different naming conventions ReSharper complains about it, and rightfully so.  But, since I diligently try to keep my solution’s issue count at zero, having ReSharper counting those issues and squiggly underlining those variables that I have no control over really annoys me.  Luckily, there is a simple way to disable ReSharper’s inconsistent naming evaluation check for an entire file. By adding the comment //ReSharper disable…

Read More

.NET: Shared App Settings

By | .NET, News | No Comments

I recently needed to write a couple of console applications to perform some tasks on an Azure Search Service.  I wanted both of the applications to be in a single .NET solution along with a common class library project for code shared between both console applications.  Easy enough, right?  Along the way I found myself duplicating the Azure Search configuration variables in both console applications.  Since the DRY principle is something I try diligently to practice, I started looking for a way to have shared app settings in the shared/common assembly and then reference them in the individual console applications….

Read More

Running Resource Intensive Jobs Using Azure Batch

By | .NET, Azure, Batch Processing, Microsoft, Visual Studio | No Comments

This is post 29 of 31 in the series “A Cloudy 29 Days of Microsoft Azure” Running Resource Intensive Jobs Using Azure Batch Azure Batch Services provide a framework for resource or computationally expensive jobs. When I say “computationally expensive”, think 3D rendering for Pixar, engineering stress analysis, or calculations for fluid dynamics. The DIY approach starts with “I’ll add a ‘for’ loop and kick off some background executables”. But once you start to scale in any direction, then you’re off to the races building infrastructure to handle generic plumbing needs like… Install apps and dependencies. Dispatch, queue and start…

Read More

Meet the new microservice platform – Service Fabric

By | .NET, Azure, News, Visual Studio | No Comments

This is post 19 of 31 in the series “A Cloudy 29 Days of Microsoft Azure” Microsoft Azure Service Fabric is the new microservices implementation that allows organizations to focus on building applications and worry less about infrastructure to run your business. This service is currently in preview but it shows great potential in helping manage at-scale services. Platform as a Service (PaaS) is not new to Microsoft Azure. There are currently many services including Cloud Services and the new App Services. I believe this new PaaS offering could be a game changer for running services and worker-type roles. To…

Read More

Migrating from Mobile Services to Mobile Apps, when you should consider it

By | .NET, Android, Apps for Office, Azure, Microsoft, Mobile, News, node.js, Office365, Visual Studio, Web, Web & Mobile | 4 Comments

This is post 13 of 31 in the series “A Cloudy 29 Days of Microsoft Azure” In this column we are going to discuss the difference between Mobile Apps and Azure Mobile Services,. Azure Mobile Services allows you to add a cloud-hosted scalable backend to your connected apps within minutes. Whether you’re building apps for Windows 8, Windows Phone, iOS or Android you can take advantage of the Azure cloud to streamline your data and provide a robust, reliable and cost-effective platform to support your application. Mobile Services has been around since 2012 when it was in preview, and has seen many version updates and…

Read More