This tip falls squarely into the category of simple, yet oh so useful. Visual Studio 2015 isn’t exactly new, but I am still discovering things that make it so nice for debugging. That’s where I’ve spent a lot of my time this week, and one thing that has saved me is using Actions on breakpoints to print messages to the console. And surprise! You can do the same thing even when using auto-properties in Visual Studio 2015 without backing fields.
A Software Engineer with over 8 years experience, Rachel has experience in circuitry design and automated test systems, but her true passion has always been for software. When she's not at the keyboard developing software, Rachel loves to spend time with her husband and daughters on their cattle ranch enjoying horseback riding, taking photos, and making memories with her extended family.
I know for a fact I have shared this tip with colleagues multiple times over the last year, because it always seems to be just tricky enough to trip someone up when writing a WordPress blog post that would benefit from a live JSFiddle in an iframe. And I realize that there are plugins for this also, but you might not have access to them, or maybe you just want a simple solution.
Each year for the past several years, I have set a personal goal to get developer certified or trained in something new. Sometimes that is a Microsoft Exam, sometimes it is some other certification, such as Kendo UI certification. In previous years, I have had to travel to a test center to take certain Microsoft Exams, but the test center closest to me closed in 2014. The next closest location is over 2 hrs away, which was pretty much a deal breaker for me, and I had almost given up this year on meeting my goal for 2016. But, instead I decided to try something new: an Online Proctored Microsoft Certification Exam.
I have been doing a lot of Schema Compare operations using Visual Studio Database Projects lately. One thing that has bugged me is that if I am using any settings that are not default, there is no obvious way to save those settings to apply to another new compare.
What’s great is that you can compare schemas and get upgrade scripts just using a DACPAC, or Data-tier Application Component Package file all by itself. No connection to the actual live database needed! The dacpac file is generated on a build, or you can also create one using the snapshot option from inside Visual Studio.
Today I want to share a little Kendo UI Combobox customization, one that I hope you’ll find useful: restoring the previous value on an invalid entry. Often we see validation, especially numeric validation on a range for example, use coercion to simply force the value to either the highest or lowest number. This certainly prevents invalid entry, but the user experience isn’t all that great in every scenario. What may be preferred, for an allowed range of 0-10, and if the user intends to change a 3 to a 4 and instead accidentally enters 44, would be to just restore the value of 3 (not coerce to 10).
EF brings with it my favorite file to merge – the .edmx file. It’s a perfect setup for merging hell – a generated file with reordered elements that can change location on each generation, and a high probability for many changes for each feature set.
Occasionally I will learn a new (or rather, new to me) trick for making a task easier and think, “Oh! How did I not know this before?” Those are usually the things I file away for a great quick tip blog, like this tip using a UDL file for a data connection test.
In my last blog, I showed some examples of dates in a Kendo UI Grid. This time, let’s look at checkboxes. True/False data in the Kendo UI Grid is always interesting to work with. A checkbox makes sense for boolean values, but they come with some expectation from the user’s point of view. They see a checkbox, and they want to be able to click it! Entering an Edit mode and then clicking the checkbox just doesn’t cut it.
If you are working with tabular data, then chances are your users want to see it in a grid. And in my experience if you put the data in a grid, those users are going to export that data to Excel! Of course. Well, if you were lucky enough to be using a Kendo UI Grid, then the pain of exporting that grid data to an Excel spreadsheet is a lot less….painful.
I use the Kendo UI Grid. I use it a lot, in fact. And one thing I’ve found is that tabular data, in its pure form with columns and rows is, well, boring. But with column templates, you can add visualizations inside the grid itself. Sure, you probably already knew that adding a visualization makes for a better user experience. But did you know it could be so easy?
I recently started using a SQL Database Project in Visual Studio 2015 to on a (pre-existing) complex database, and since the previous source control was pretty much nonexistent, it’s been a welcome change. Overall, the upgrade process went pretty well, with one exception that kind of screeched the whole thing to a halt. Since I’m sure I’ll run across the same issue again someday and by then I will have forgotten what the solution was, I’ll share it with you – and myself – in blog form.
I have been having some fun with Kendo UI map visualizations recently by combining CSS3 styling with custom marker elements. Applying custom data-based HTML elements to the map opens up endless possibilities for mapping, and the Kendo map makes it really straightforward. If your data has a geographic component, then viewing it on a map is a powerful visualization.
If you read Part 1 of my posts on ARM, then you’ll remember there is a caveat to ARM VMs, at least for right now. Azure automatic backups only work for ‘Classic’ VMs, NOT those created using ARM templates. IaaS v1 VMs are fine, just not v2. So for now, use those template VMs as the machines you can blow away and start over, and use classic VMs for anything you need to automatically backup using an Azure backup vault.
Now that we have deployed a simple Azure Resource Manager template from Visual Studio in Part 1, let’s look at just how simple it is to use that method to deploy a network of VMs using networking templates. If you aren’t a networking expert (and I am admittedly not), the configuration options for virtual networks is pretty daunting. But the availability of networking templates can be a great way to learn.
Azure Resource Manager, or ARM, is the latest mechanism provided by Azure that makes creating VMs simpler. In simple terms, Azure Resource Manager allows management and creation of Azure resources, such as VMs, Databases, Storage, etc, altogether as part of a Resource Group.
Visual Studio 2015 brings us several long-requested improvements to the debugging process, not the least of which is support for evaluation of lambda expressions. We can finally be rid of the “Expression cannot contain lambda expressions” message that has frustrated many a developer deep in the midst of a debugging session.
The Rename feature is an IDE improvement you may have seen before as part of an extension. ReSharper and CodeRush users have been happily renaming for a while now, and there’s a reason it’s an often-used feature. Any refactoring operation is likely to involve some renaming, and having to do it just one time is so much faster! Now the rest of us can rejoice – Rename is built-in to Visual Studio 2015 and I like it better than any other method I’ve tried.
Here is another productivity enhancement to Visual Studio 2015 – Light Bulbs and Quick Actions. I love this trend of taking my favorite features from premium paid extensions (like the Light Bulbs I know from ReSharper) and making them an integrated part of the application. I can really tell the Visual Studio team is paying attention to the voices and needs of its users.
In our first 2 exercises, we completed a simple Kendo widget initialization and output using PhantomJS. But if you want to use this technique for something a little more complex with a few more widgets and a more complicated UI, it’s likely you will also want to know how to debug when things don’t go as planned.
Ever needed to create one of those range-style sliders for Dates or Times? Like what you might see when selecting flight times for airline tickets – show me flights that take off after 7am, but before 12pm, thanks! You can do something similar with the Kendo UI RangeSlider widget. But let me point out a few tips to help.