Introduction I had my intranet site selfsigned before. But the problem with self signing is that the user gets a warning. And of course we all click continue and then you get this. Which makes the addressbar totally useless because gray on pink is not very readable. So I set out to fix it. And here is my story. Installation You should install the Active directory certificate services. Go to technet to learn how to do that for your server, I did.
This is an archive of the posts published to LessThanDot from 2008 to 2018, over a decade of useful content. While we're no longer adding new content, we still receive a lot of visitors and wanted to make sure the content didn't disappear forever.
This blog is part of my series Making Data Tell a Story With SSRS Properties. Property: Tablix Sorting The purpose of this property is to sort the results of a tablix in the order you determine. To access the property for a tablix, right-click a row or column and select Tablix Properties. Select Sorting. Click Add. To select it for a row or column group, go to the group pane, click the down arrow to the right of the group name, and select Group Properties.
Let’s say you have a collection and you are only interested in storing the last 50 items or so. Everytime you add a new item, you want the oldest item to disappear. What you can do is create a capped collection. Here are some behaviors that capped collections have Capped collections guarantee preservation of the insertion order. As a result, queries do not need an index to return documents in insertion order. Without this indexing overhead, they can support higher insertion throughput.
This blog is part of my series Making Data Tell a Story With SSRS Properties. Property: Tablix Filters The purpose of this property is to allow you to filter the results of a dataset shown in a tablix. To access the property, right-click a row or column group in the tablix and select Tablix Properties. Select Filters. The options are Expression, Operator, and Value. Expression – a field from the data set. You can also select the fx button to write an expression.
Introduction I wanted to show my users some prettier errorpages then the default you get from IIS or [Nancy][1]. This being the default for Nancy. Because I know you guys like pictures. Of course this was the first time ever in any webapp that I did that, So I had to look certain things up. And [I thought this][2] was pretty cool. But of course that’s not how Nancy works.
In this post we are going to look at how to drop database and collections. We already covered backup and restores, now that you know how to do that, it is safe to cover dropping collections and databases Execute the following command, it will create the MultiCollection database if it doesn’t exist already use MultiCollection Now create these two collections db.Blog.insert( { name : "Denis", age : 20 } ) db.Blog.insert( { name : "Abe", age : 30 } ) db.Blog.insert( { name : "John", age : 40 } ) db.Blog.insert( { name : "Xavier", age : 10 } ) db.Blog.insert( { name : "Zen", age : 50 } ) db.People.insert( { name : "AADenis", age : 0020 } ) db.People.insert( { name : "AAAbe", age : 0030 } ) db.People.insert( { name : "AAJohn", age : 0040 } ) db.People.insert( { name : "AAXavier", age : 0010 } ) db.People.insert( { name : "AAZen", age : 0050 } ) Now it is time to drop a collection. The syntax is pretty simple it is db.CollectionName.drop(). So if we wanted to drop the Blog collection it would be db.Blog.drop()
A week ago I gave a session for the Belgian SQL Server user group, SQLUG.be, about how MSBUILD can be used to automate SSRS deployments. Thanks to a lovely strike of the taxi drivers in Brussels it took me only 2 hours to get at the location, but hey, the turnout was great, there was beer and pizza and the demo's didn't crash. You can find the demo material from my session here and you can download the slides from SlideShare. My colleague Valentino did a session as well, you can find his material on his blog.
This blog is part of my series Making Data Tell a Story With SSRS Properties. Property**:** Hidden and ToggleItem The purpose of this property is to have rows or columns automatically expanded or collapsed, with the ability to expand or collapse at any time, with a toggle item. This is also called drilldown. To access the properties, select a row or column group in the grouping pane. The options for Hidden are True or False.
The technical sphere seems to have very mixed definitions for the terms “Quality” and “Quality Assurance”. The other day I was reading a post by Devlin Liles (blog|twitter) in response to a presentation he had attended (Quality Assurance–The Team Approach). While I agreed with a lot of his opinions, as I started to leave a comment I found myself sidetracked into examining the different (and in many cases, wrong) definitions we use for Quality and Quality Assurance.
So I have been using Nancy and my IIS is configured to use windows authentication. Now how do I get the current authenticated user onto my webpage. But first of all how do I get the name of the current authenticated user. Well that was the simple part. HttpContext.Current.User.Identity.Name``` And there you have it. Now we all know that we can do this in Nancy with Razor to get the current logged in user when using formsauthentication or basic authentication. ```vbnet Url.RenderContext.Context.CurrentUser``` Of course we could do this in our Module. ```vbnet Context.CurrentUser = New User With {.UserName = HttpContext.Current.User.Identity.Name}``` And that would work, but it would become very tedious to repeat this for every module we have. So we have to look for a better way of doing this. And of course there is. We can make our own bootstrapper and change it in the nancy pipleine. ```vbnet Imports Nancy Imports Nancy.Security Public Class BootStrapper Inherits DefaultNancyBootstrapper Protected Overrides Sub ApplicationStartup(container As TinyIoc.TinyIoCContainer, pipelines As Nancy.Bootstrapper.IPipelines) MyBase.ApplicationStartup(container, pipelines) pipelines.AfterRequest.AddItemToEndOfPipeline(Sub(ctx) ctx.CurrentUser = New User With {.UserName = HttpContext.Current.User.Identity.Name} End Sub) End Sub Private Class User Implements IUserIdentity Public Property Claims As IEnumerable(Of String) Implements IUserIdentity.Claims Public Property UserName As String Implements IUserIdentity.UserName End Class End Class``` So I added this to the AfterRequest hook And that changes the currentuser on every request for me. I also created a class User because CurrentUser needs a class that implements IUserIdentity. Cool huh.