Skip to content

Instantly share code, notes, and snippets.

View mariusschulz's full-sized avatar
🤓

Marius Schulz mariusschulz

🤓
View GitHub Profile
@mariusschulz
mariusschulz / ExternalJavaScriptFileAttribute.cs
Last active April 16, 2020 15:24
Here's the ExternalJavaScriptFileAttribute that I showed in my blog post "Generating External JavaScript Files Using Partial Razor Views" (see http://blog.mariusschulz.com/generating-external-javascript-files-using-partial-razor-views).
View ExternalJavaScriptFileAttribute.cs
using System;
using System.IO;
using System.Text;
using System.Text.RegularExpressions;
using System.Web.Mvc;
namespace DemoApp
{
public class ExternalJavaScriptFileAttribute : ActionFilterAttribute
{
View gist:6594870
public string DecryptQueryString(string inputText, string key, string salt)
{
byte[] encryptedData = Convert.FromBase64String(inputText);
var secretKey = new PasswordDeriveBytes(Encoding.ASCII.GetBytes(key), Encoding.ASCII.GetBytes(salt));
using (var rijndaelCipher = new RijndaelManaged())
using (var decryptor = rijndaelCipher.CreateDecryptor(secretKey.GetBytes(32), secretKey.GetBytes(16)))
using (var memoryStream = new MemoryStream(encryptedData))
using (var cryptoStream = new CryptoStream(memoryStream, decryptor, CryptoStreamMode.Read))
{
View BinarySearch.cs
private static bool BinarySearch(int[] sortedHaystack, int needle)
{
int leftBoundary = 0;
int rightBoundary = sortedHaystack.Length - 1;
while (leftBoundary <= rightBoundary)
{
int pivotIndex = (int)(((long)leftBoundary + rightBoundary) / 2);
int pivotValue = sortedHaystack[pivotIndex];
View isPrime.coffee
isPrime = (n) ->
return true if n is 2 or n is 3
return false if n % 2 is 0
for i in [3..Math.sqrt n]
return false if n % i is 0
true
primesUnder100 = (n for n in [1..100] when isPrime n)
View ParameterRegex.cs
const string placeholderPattern = @"
\[
\[
([^\]]+) # Description of whatever is in here
\]
\[
([^\]]+) # Description of whatever is in here
\]
\]";
@mariusschulz
mariusschulz / trimStart.js
Created October 11, 2014 16:53
A JavaScript trimStart function
View trimStart.js
function trimStart(character, string) {
var startIndex = 0;
while (string[startIndex] === character) {
startIndex++;
}
return string.substr(startIndex);
}
View IndentedTextWriterDemo.cs
using System;
using System.CodeDom.Compiler;
using System.Collections.Generic;
using System.IO;
using System.Linq;
namespace IndentedTextWriterDemo
{
public class TodoItem
{
@mariusschulz
mariusschulz / Digits.cs
Last active November 4, 2015 16:28
A list of characters that the regular expression pattern \d matches in .NET.
View Digits.cs
var digitRegex = new Regex(@"\d");
IEnumerable<char> digitCharacters = Enumerable
.Range(1, Char.MaxValue)
.Select(Convert.ToChar)
.Where(c => digitRegex.IsMatch(c.ToString()));
@mariusschulz
mariusschulz / HtmlHelperExtensions.cs
Last active November 15, 2022 21:54
Two C# extension methods for inlining script and style bundles into the HTML response using ASP.NET MVC and the System.Web.Optimization framework.
View HtmlHelperExtensions.cs
using System.Linq;
using System.Web;
using System.Web.Mvc;
using System.Web.Optimization;
public static class HtmlHelperExtensions
{
public static IHtmlString InlineScripts(this HtmlHelper htmlHelper, string bundleVirtualPath)
{
return htmlHelper.InlineBundle(bundleVirtualPath, htmlTagName: "script");
@mariusschulz
mariusschulz / .eslintrc
Created November 7, 2015 21:39
My ESLint configuration
View .eslintrc
{
"env": {
"es6": true,
"browser": true,
"node": true
},
"ecmaFeatures": {
"modules": true
},
"rules": {