Skip to content

Instantly share code, notes, and snippets.

View DominicFinn's full-sized avatar

Dominic Finn DominicFinn

View GitHub Profile
@DominicFinn
DominicFinn / Domain.cs
Created January 21, 2016 20:00
Trying to stop a domain being abused
using System;
using ImmutableDomain.Commands;
using ImmutableDomain.Entities;
using ImmutableDomain.Help;
namespace ImmutableDomain.Help
{
public interface ICommandHandler<T>
{
void Handle(T command);
@DominicFinn
DominicFinn / CallingClass.cs
Created January 21, 2016 19:59
Trying to stop a domain being abused
using System;
using ImmutableDomain.Commands;
using ImmutableDomain.Entities;
using ImmutableDomain.Help;
namespace ImmutableDomain.Other
{
public class CallingClass
{
private readonly IRepository repository;
@DominicFinn
DominicFinn / CallingClass.cs
Created January 21, 2016 14:20
Trying to stop a domain being abused
using System;
using ImmutableDomain.Commands;
using ImmutableDomain.Entities;
using ImmutableDomain.Help;
namespace ImmutableDomain.Other
{
public class CallingClass
{
private readonly IRepository repository;
@DominicFinn
DominicFinn / splitstring.bas
Created September 17, 2015 16:15
Split String Method for VBA
Public Function SplitString(value As String, delimiter As String, arrayVal As Integer) As String
SplitString = Split(value, delimiter)(arrayVal)
End Function
@DominicFinn
DominicFinn / timeout.fsx
Created September 17, 2015 14:52
ADO.NET command timeout
open System.Data
open System.Data.SqlClient
let cn = new SqlConnection("Data Source=;Initial Catalog=;Persist Security Info=True;User ID=;Password=")
cn.Open()
let command = new SqlCommand("WAITFOR DELAY '00:00:04';select * from sys.tables", cn)
command.CommandTimeout <- 1 // will break
command.ExecuteNonQuery() |> ignore
cn.Close()
@DominicFinn
DominicFinn / iis.fsx
Created August 5, 2015 23:28
IIS administration with F#
#r "C:\\git\\bitbucket\\iis-admin\\packages\\Microsoft.Web.Administration.7.0.0.0\\lib\\net20\\Microsoft.Web.Administration.dll"
open System
open Microsoft.Web.Administration
let siteName = "doms-wicked-site"
let name(siteType: string) =
String.Format("{0}_{1}", siteName, siteType)
@DominicFinn
DominicFinn / siteGenerator.fs
Created August 5, 2015 16:18
Example of using Microsoft.Web.Administration with F#
namespace SiteScripter
open System
open Microsoft.Web.Administration
module siteGenerator =
let createSite(siteName: string) =
let name(siteName: string, site: string) =
String.Format("{0}_{1}", siteName, site)
@DominicFinn
DominicFinn / FileProcess.fsx
Last active August 29, 2015 14:20
Processing CSV Files, all this does at the moment is match to find the rows that have values in them. We need to store them then or something like that and then we could have another script to process them perhaps? Not sure..... Once we have them like this though we can do what we want with them
open FSharp.Data
open System.IO
open System
let load(file: FileInfo) =
let rows = File.ReadAllLines(file.FullName)
rows
let split(rows: string[]) =
let clean(columns: string[]) =
@DominicFinn
DominicFinn / SanityHunter.fsx
Last active August 29, 2015 14:18
Gets all your databases that don't have a number on the end such as 1 or 1.0 and versions them up for you ;-)
open System.Data
open System.Data.SqlClient
let query sql f =
seq {
use cn = new SqlConnection("")
let da = new SqlDataAdapter(new SqlCommand(sql, cn))
let ds = new DataSet()
cn.Open()
let i = da.Fill(ds)
@DominicFinn
DominicFinn / GivenAPersonIsCreated.cs
Created March 27, 2015 10:56
Example of our Acceptance Specification Test
public class GivenAPersonIsCreated : AcceptanceSpecification {
protected override void Given() {
}
protected override void When() {
}
[Then]
public void TheUserShouldBeSaved() {