This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
[<RequireQualifiedAccess>] | |
module TextMagic | |
//https://www.textmagic.com/docs/api/send-sms/ | |
// #r "System.Text.Json" | |
// #r "FSharp.Data" | |
open System | |
open System.IO | |
open System.Net | |
open System.Text.Json |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/// Old post recovered from Feb 2013: | |
/// https://web.archive.org/web/20130510043355/social.msdn.microsoft.com/Forums/en-US/adodotnetentityframework/thread/bc0bd8f3-0e49-440c-b0bb-8d9adb593934 | |
/// | |
/// This shows how you can: | |
/// | |
/// - Code from top-down, give high level picture first and then go to details | |
/// - Define LINQ outside EF-context and still convert it to SQL: Don't hammer the database! | |
/// - Have small independend classes (/parts) | |
/// - Have state-less code with no global/class-variables outside entities | |
/// - Easy to test: a) Integration test with EF-DbContext. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// This expects you have 2 projects, this first one has dependendency only to Microsoft.Extensions.Logging.Abstractions | |
// (and temporarily usage of Microsoft.Extensions.Logging.Console ). | |
module AbstractProject | |
let loggerFactory = | |
Microsoft.Extensions.Logging.LoggerFactory.Create(fun builder -> | |
let _ = Microsoft.Extensions.Logging.ConsoleLoggerExtensions.AddSimpleConsole builder | |
()) | |
/// This is ILogger. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
//High-performance JSON parsing with System.Text.Json and F# | |
// Example translated to F# from | |
// https://learn.microsoft.com/en-us/dotnet/standard/serialization/system-text-json/use-utf8jsonreader | |
#r "nuget:System.Text.Json" | |
open System | |
open System.Text | |
open System.Text.Json | |
let options = JsonReaderOptions( |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Find binding-redirects with linq-to-xml from a .config file. | |
// This might be useful for then parsing config-changes e.g. by System.Linq.Enumerable.Except | |
#r @"System.Xml.Linq.dll" | |
open System.Xml.Linq | |
let parseBindingRedirects (filename:string) = | |
let xn s = XName.Get(s,"urn:schemas-microsoft-com:asm.v1") | |
let xml = XDocument.Load filename | |
let depAssemblies = xml.Descendants(xn "dependentAssembly") | |
seq { |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
function tiktokTag() { | |
try { | |
window.TiktokAnalyticsObject = 'ttq'; | |
var ttq = window.ttq = window.ttq || []; | |
ttq.methods = ["page", "track", "identify", "instances", "debug", "on", "off", "once", "ready", "alias", "group", "enableCookie", "disableCookie"]; | |
ttq.setAndDefer = function(t, e) { | |
t[e] = function() { | |
t.push([e].concat(Array.prototype.slice.call(arguments, 0))) | |
} | |
}; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/// Set of little F# (FSharp) functions as script tools to work with | |
/// - KML files (Keyhole Markup Language) used by Google Earth and Google Maps | |
/// - Google Maps Streetview API, | |
/// - Oculus Wander Application (by Parkline Interactive, LLC) bookmarks: Wander_Favorites.json | |
/// You have to first set your Google API key to environment variables as api-key and enable | |
/// Streetview API for that | |
// System.Environment.SetEnvironmentVariable("api-key", "...") | |
#r "nuget: FSharp.Data" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// In Windows you can press WindowsKey+"." to open Emoji menu. | |
let ``🍕`` = "🥓" + "🍍" | |
//val ( 🍕 ) : string = "🥓🍍" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// A simple expression tree visitor, to inject a lambda inside another lambda parameters. | |
open Microsoft.FSharp.Linq.RuntimeHelpers | |
open System | |
open System.Linq.Expressions | |
//F#-helper method for Linq.Expressions: fssnip.net/ts/title/F-lambda-to-C-LINQ-Expression | |
module Lambda = | |
let toExpression (``f# lambda`` : Quotations.Expr<'a>) = | |
``f# lambda`` | |
|> LeafExpressionConverter.QuotationToExpression |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
module GraphVizSample | |
open GraphVizWrapper | |
open GraphVizWrapper.Commands | |
open GraphVizWrapper.Queries | |
open System | |
open System.Configuration | |
open System.Drawing | |
open System.IO |
NewerOlder