Skip to content

Instantly share code, notes, and snippets.

View damianh's full-sized avatar
💥

Damian Hickey damianh

💥
View GitHub Profile
@damianh
damianh / GitLabCICDVariables.md
Last active June 27, 2023 17:18
GitLab predefined CI/CD variables as a C# DTO
public class GitLabCICDPredefinedVariables
{
    /// <summary>
    /// The Source chat channel that triggered the ChatOps command.
    /// </summary>
    public string? CHAT_CHANNEL { get; set; }

    /// <summary>
    /// The additional arguments passed with the ChatOps command.
@damianh
damianh / .gitignore_global
Created January 3, 2020 09:23
Global gitignore
## Setup with: git config --global core.excludesfile ~/.gitignore_global
## Visual Studio
*.suo
*.user
*.userosscache
*.sln.docstates
.vs/
# files ending in .cache can be ignored
*.[Cc]ache

Keybase proof

I hereby claim:

  • I am damianh on github.
  • I am damianh (https://keybase.io/damianh) on keybase.
  • I have a public key ASDdrEOvi9wDrZA5r70rc1h2dus7ZvaQNzF5-AeV59esAQo

To claim this, I am signing this object:

@damianh
damianh / AspNetCore use specific controllers
Created August 9, 2018 13:38
Configure aspnet core to use only specific controllers and not do assembly scanning. Also supports internal types.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Reflection;
using Microsoft.AspNetCore.Mvc.ApplicationParts;
using Microsoft.AspNetCore.Mvc.Controllers;
using Microsoft.Extensions.DependencyInjection;
namespace MyApp
{
@damianh
damianh / DotNetGlobalTools.ps1
Last active June 3, 2018 11:41
Just my global dotnet tools
dotnet tool install --global dotnet-outdated
@damianh
damianh / CookieMessageHandler.cs
Created April 28, 2018 11:43
HttpMessageHandler for dealing with cookies in requests.
public class CookieMessageHandler : DelegatingHandler
{
private readonly CookieContainer _cookies = new CookieContainer();
protected override async Task<HttpResponseMessage> SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)
{
request.Headers.Add("Cookie", _cookies.GetCookieHeader(request.RequestUri));
var response = await base.SendAsync(request, cancellationToken).ConfigureAwait(false);
@damianh
damianh / MvcExtensions.cs
Created October 12, 2017 12:49
Scoping which controller types are registered in aspnet core
using System;
using System.Collections.Generic;
using System.Linq;
using System.Reflection;
using Microsoft.AspNetCore.Mvc.ApplicationParts;
using Microsoft.Extensions.DependencyInjection;
namespace MyApp
{
public static class MvcExtensions
@damianh
damianh / SignatureRemoverAddin.cs
Last active September 15, 2017 15:04
Dumb find-replace-save outlook addin for incoming email. Creating Your First VSTO Add-In for Outlook: https://msdn.microsoft.com/en-us/library/cc668191.aspx
public partial class SignatureRemoverAddIn
{
private void SignatureRemoverAddIn_Startup(object sender, EventArgs e)
{
var outlookNameSpace = this.Application.GetNamespace("MAPI");
var inbox = outlookNameSpace.GetDefaultFolder(OlDefaultFolders.olFolderInbox);
var items = inbox.Items;
items.ItemAdd += ItemsOnItemAdd;
}
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Runtime.InteropServices;
using Microsoft.VisualStudio.Setup.Configuration;
namespace LocateMSBuild
{
public class Instance
title Command Handling, Optimistic Concurrency
actor User
boundary Handler
boundary Repository
entity BarInstance
database EventStore
autonumber
User -> Handler : Set Foo = 2 where\nOriginalFoo = 1 on Bar
Handler -> Repository : Get Bar