Tolpeit Stefan
  • Startseite
  • Portfolio
  • Kontakt
  • Blog
  • Suche
  • Menü
  • Facebook
  • Twitter
  • Xing

Filecaching mit C#

In eigener Sache, Programmierung

Ich habe mich in den letzten Tagen mehr mit Filecaching in C# informiert. Es gibt verschiedenste Bibliotheken um ein Filecaching zu implementieren.

Durch langes Googeln, fand ich folgende Projekte.

BinaryRage

SimpleObjectStore

SqlLite.net PCL

Am einfachsten sind wohl die ersten 2 zu nennen. Beide arbeiten mit wenigen Funktionieren wie z.b. eine UddOrUpdate und Remove/Clear funktionien bei denen ein Objekt übergeben werden kann.

Der SqlLite.net PCL arbeitet wei schon der Name sagt mittels SqlLite und ist daher ein bisschen aufwändiger zu verwenden. SqlLite.net PCL wurde von mir jedoch schlussendlich nicht getestet bzw verwenden, da die Benutzung nicht so einfach war.

Gewinner dieser 3 Bibliotheken war der BinaryRage! Folgender ist einfach zu verwenden und komplexe Datentypen abzuspeichern du diese wieder zu laden z.B.: nach einem App Neustart! Auch läuft das lesen und speichern irsinnig schnell. Teilweise können eine Million Datensätze innerhalb einer Sekunden geschrieben werden.

Standartmäßig schreibt BinaryRage seine Daten asynchron ab. Wollte man nach dem speichern Aufruf direkt die Daten lesen, muss eine zusätzliche Funktion aufgerufen werden.

C#
1
BinaryRage.DB.WaitForCompletion();

Der BinaryRage speicher seine Daten als byte File ab mit der Fileändung odb!

Hingegeben der SimpleObjectStore schreibt seine Daten als Json File ab. DAs heißt das File kann auch zwischen durch mit einem Editor begutachtet werden.

Jedoch gibt es beim speichern von großen Datenmengen (bei ca. 20MB) einen Fehler. Scheint so als ob der verwendete Json Serializer nur eine maximal Größe von 20 MB zulest.

Daher der griff zum BinaryRage!

30. Juni 2015/0 Kommentare/von Tolpeit

Automatic Ravendb3 Backup

In eigener Sache, Programmierung, Webprogrammierung

Because the incremental backup of the Ravendb Backend isn`t working perfektly, I have written a little program to Backup a whole Ravendb(Web) Server with one command.

The program makes a Backup and zip that. You can define in the app.config the fileformat to store.

Check it out on GitHub RavendbBackup on Github

21. Januar 2015/0 Kommentare/von Tolpeit

Form als Json serialisieren und mittels Jquery Ajax posten

Webprogrammierung

Hier ein kleines Tutorial, wie man ein komplettes form in ein JSON serialisiert und es mittels ajax postet

Zuerst einmal benötigen wir eine Hilfefunktion damit wir das form in ein Json serialisieren können. Leider gibt es keine bereits verwendbare Funktion.

JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
$.fn.serializeObject = function () {
    var o = {};
    var a = this.serializeArray();
    $.each(a, function () {
        if (o[this.name] !== undefined) {
            if (!o[this.name].push) {
                o[this.name] = [o[this.name]];
            }
            o[this.name].push(this.value || '');
        } else {
            if ($("[name=" + this.name + "]").data("serializearray") != undefined) {
                var arr = new Array();
                arr.push(this.value || '');
                o[this.name] = arr;
            } else {
                o[this.name] = this.value || '';
            }
        }
    });
    return o;
};

Speziell für Checkboxlisten: Sollte es Probleme beim Post geben dass z.b. ein MVC Controller Arrays nicht richtig bindet, verwendet auf eurer checkbox folgendes attribut data-serializearray. Das sorgt dafür, wenn auch nur eine checkbox ausgewählt wird ein Array gemacht wird. Als Default nämlich möchte der MVC Controller es als string oder int parsen.

So nun kommen wir zum Post

JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
var data = $('form').serializeObject();
$.ajax({
        cache: false,
        url: 'xxxxxxxx',
        type: "POST",
        dataType: "json",
        contentType: 'application/json; charset=utf-8',
        data: JSON.stringify(data),
        traditional: true,
        success: function (callback) {
            if (callback.Success) {
            } else {
//error
 
            }
 
        },
        error: function () {
            $('#output').html("Error!");
        }
    });

Hier gibt es eigentlich nicht viel zu sagen. Das Form serializieren und als data übertragen.

Viel Spaß

13. März 2014/0 Kommentare/von Tolpeit

Javascript – Herausfinden ob der userAgent ein Iphone oder Ipad ist

Javascript, Webprogrammierung

Mit folgenden Code kannst du in Javascript prüfen ob der User Agent ein Iphone Ipad oder Ipod ist

var iOS = ( navigator.userAgent.match(/(iPad|iPhone|iPod)/g) ? true : false );

Oder verwende die Funktion .test()

var iOS = /(iPad|iPhone|iPod)/g.test( navigator.userAgent );

IOS wird entweder true oder false sein


Eine andere Möglich ohne Regular Expressions wäre:

var iOS = false, p = navigator.platform; if( p === 'iPad' || p === 'iPhone' || p === 'iPod' ){ iOS = true; }

Optimiert auf mehrere Geräte:

var i = 0, iOS = false, iDevice = ['iPad', 'iPhone', 'iPod']; for ( ; i < iDevice.length ; i++ ) { if( navigator.platform === iDevice[i] ){ iOS = true; break; } }

 

19. Februar 2014/0 Kommentare/von Tolpeit

Füge Git zu Windows 7 Path hinzu

Windows

Note: Sie müssen msysgit auf ihrem Pc installiert haben. Auch der Installationpfad muss “C:\Program Files (x86)\Git” sein, ansonsten muss dieser angepasst werden.

Öffnen der Windows Environment Variables/Path Fensters

  • Rechtsklick auf My Computer
  • Klicken Sie auf Advanced System Settings in der linken Seite
  • Klicke auf Environment Variables am Ende des Fensters
  • Dann unter System Variables suchen Sie die path Variable und Klicken sie auf edit
  • Fügen sie folgendes hinzu und schon funktionierts:

1
;C:\Program Files (x86)\Git\bin;C:\Program Files (x86)\Git\cmd

23. Januar 2014/0 Kommentare/von Tolpeit

Xbox One flashen – Modchip

Webprogrammierung

Derzeit liegen noch keine Berichte vor, das zeigt, dass gebrannte Spiele auf der Xbox one gespielt werden können. Daher gibt es noch keinen geeigneten Flash bzw. Modchip.

1. Dezember 2013/0 Kommentare/von Tolpeit

Flugsportzentrum Tirol im Neuem Design

In eigener Sache

Alle Änderungen der Umgestaltung der Homepage des Flugsportzentrum Tirols sind nun abgeschlossen.

Die Seite erstrahlt nun in neuem Glanz.

10. Oktober 2013/0 Kommentare/von Tolpeit

The remote server returned an error: (411) Length Required

Webprogrammierung

Dieses Problem taucht auf, wenn man versucht einen serverseitigen Aufruf eines Post zu machen.

C#
1
2
3
4
var request = (HttpWebRequest) HttpWebRequest.Create(requestUri);
request.Headers.Add("x-ms-version", "2012-08-01");
request.Method = "POST";
request.ContentType = "application/xml";

Das Problem wird gelöst, indem man eine content-length hinzufügt

C#
1
request.ContentLength = 0;

 

2. Juli 2013/0 Kommentare/von Tolpeit

Facebook Freunde einladen alle Freunde markieren

Webprogrammierung

Facebook macht es den Usern nicht leicht, seine ganzen Freunde eine Einladung für ein Event oder eine Seite zu markieren und zu verschicken.

Es gibt folgenden Trick dass ihr alle markieren könnt Zaubersprache Javascript.

Und so funktioniert:

  • Geht in eure Seite oder Veranstaltungseite hinein und öffnet das Fenster Freunde einladen
  • Drückt die Taste F12 wählt die Konsole ein
    JavaScript
    1
    javascript:elms=document.getElementsByName("checkableitems[]");for (i=0;i<elms.length;i++){if(elms[i].type="checkbox" )elms[i].click()};

    und drückt enter.

    Nun sollten alle markiert sein

25. März 2013/0 Kommentare/von Tolpeit

Umbraco 6.0 mit MVC und Razor verwenden

Webprogrammierung

Umbraco 6  bietet von Haus aus MVC und Razor an. Jedoch um MVC und Razor verwenden zu können muss man in den einzelnen Configfiles verschiedene Attribute ändern.

Zuerst musst im File ~/config/umbracoSettings.config die Default Render View Engine von WebForms in MVC geändert werden:

1
<defaultRenderingEngine>Mvc</defaultRenderingEngine>

Nun müsste eigentlich nur noch folgendes gesetzt werden:

1
<useAspNetMasterPages>false</useAspNetMasterPages>

Einmal die web.config touchen und schon wurde Umbraco auf MVC und Razor umgestellt.

Möchte man nun ein neues Template hinzufügen wird ein Razorview erstellt nicht wie vorher ein .master file

21. März 2013/0 Kommentare/von Tolpeit
Seite 1 von 18123›»

Letzte Artikel

  • Filecaching mit C#
  • Automatic Ravendb3 Backup
  • Form als Json serialisieren und mittels Jquery Ajax posten
  • Javascript – Herausfinden ob der userAgent ein Iphone oder Ipad ist
  • Füge Git zu Windows 7 Path hinzu
  • Xbox One flashen – Modchip
  • Flugsportzentrum Tirol im Neuem Design
  • The remote server returned an error: (411) Length Required
  • Facebook Freunde einladen alle Freunde markieren
  • Umbraco 6.0 mit MVC und Razor verwenden

Letzte Projekte

  • Physio & Rehacenter Bruneck28. Juli 2019 - 21:06

    Programmierung der Website www.physio-bruneck.com

  • Karosserie Leitner28. Juli 2019 - 21:05

    Programmierung der Website www.karosserie-leitner.com

  • Hotel Lindenwirt2. Mai 2019 - 21:40

    Programmierung der Website www.hotel-lindenwirt.de im Bayrischen Wald.

Kategorien

  • Allgemein
  • In eigener Sache
  • Javascript
  • Kaufberatung
  • Konsolen
  • Programmierung
  • Spiele
  • Technik
  • Tools
  • Treiber
  • Webprogrammierung
  • Windows
  • XBox 360

Links

  • Datenschutz
  • Flightplanning24 – Metar Taf Webcams
  • Impressum

Seiten

  • Portfolio
  • Stefan Tolpeit
  • Kontakt
  • Blog

Suchen

Kommentare

  • Guruprasad bei NopCommerce multi domain with seperate languages support
  • Tolpeit bei NopCommerce multi domain with seperate languages support
  • Guruprasad bei NopCommerce multi domain with seperate languages support
  • Tolpeit bei NopCommerce multi domain with seperate languages support
  • Guruprasad bei NopCommerce multi domain with seperate languages support
© Copyright - Tolpeit Stefan P.IVA: 02832950212 - Enfold Theme by Kriesi
Nach oben scrollen
tolpeit.it verwendet Cookies von Dritten um Ihnen den bestmöglichen Service zu bieten. Wenn Sie weiterhin auf diesen Seiten surfen, stimmen Sie der Cookie-Nutzung zu. OKReject Mehr Erfahren
Cookies & Privacy