Zur Zeit wird gefiltert nach: March 1
Filter zurücksetzen

28.03.2011
17:18

T3Blog und die Suche

Dank einer 3 teiligen Blog-Serie, in der beschrieben wird wie die Indexierte Suche in Typo3 mit dem T3Blog zu einem Zusammenspiel bewegt wird, lassen sich nun auch auf meinen Blog die Einträge besser durchsuchen.

Die Anleitungen sind unter folgenden Links erreichbar:

  1. Teil 1 beschreibt die Voraussetzungen, primär wie Kommentare mit aktivierten Cache erfasst werden können.
  2. Teil 2 beschreibt das Feintuning für die Typo3-Suche.
  3. Teil 3 erklärt die Konfiguration des Crawlers und der Indexierten Suche

Die mitgelieferte Suche des T3Blogs ist bei weitem nicht so leistungsfähig, wie die indexierte Suche. Jetzt werden die Suchbegriffe auch gefunden. ;-)

Merci an den Verfasser, es hat mir viel Zeit erspart.

16.03.2011
21:29

Visual Studio 2010 SP 1 – Die VolatileAssembly-Direktive verliert den Präfix Volatile

Mit dem Service Pack 1 für Visual Studio 2010 gibt es auch kleinere Verbesserungen im Bereich von T4. Vor dem SP 1 ist es so, dass Assemblies die mit der Assembly-Direktive referenziert werden, nicht mehr bearbeitet werden können, da sie gesperrt sind. Als Alternative hierzu gibt es die VolatileAssembly-Direktive aus der T4-Toolbox, die eine temporäre Kopie der Assembly anlegt und diese verwendet. Damit wird der Sperrmechanismus umgangen und die zeitgleiche Bearbeitung von T4 Vorlagen und der verwendeten Assembly wird möglich.

Mit dem SP 1 kann auch die Assembly-Direktive das Verhalten an den Tag legen, sodass die Verwendung der VolatileAssembly nicht mehr nötig ist. Ausprobiert habe ich es auch schon und habe sporadisch folgende Fehlermeldung erhalten:

There was a problem getting an AppDomain to run the transformation from the host. The process cannot continue.

Tritt dieser Fehler ein, reicht es nicht aus die Solution zu schliessen. Der Fehler ist erst verschwunden, wenn Visual Studio geschlossen und wieder gestartet wird. Die unkontrollierbare temporäre AppDomain lässt grüssen.

Entity Framework 4.1 - Release Candidate verfügbar

Der RC von EF 4.1 ist verfügbar. Neben den NuGet-Packages, die keine T4-Templates enthalten, gibt es auch eine Stand alone - Version.

Detaillierte Informationen gibt es hier.

10.03.2011
16:40

Windows 7 Service Pack 1 und es hat Boom gemacht

Heute kam ich auf die Idee, den Firmenrechner mal wieder komplett herunterzufahren. Wenn ich vorher gewusst hätte, auf was ich mich da einlasse, wäre es bei einer Idee ohne Tatendrang geblieben.

Mit dem Herunterfahren wurde das Service Pack 1 über WSUS installiert. Die Folge davon war, dass mich die Fehlermeldung Fatal error C0000034 applying update operation begrüsste und das System nicht mehr startete. DISM führte auch nicht zum gewünschen Erfolg. Das was meine Kiste wieder zum laufen brachte, war eine Anleitung auf Administrator.de.

Die Moral von der Geschicht, Service Pack 1 über WSUS installiert man nicht.

Entity Framework 4 – Die Zeiten im Griff mit SqlFunctions

Letztes Jahr hatte ich mich in diesen Beitrag mit den Zeitfunktionen im Entity Framework auseinandergesetzt. Das Hauptproblem war die Verwendung von DateTime-Methoden in Kombination mit Linq-Abfragen. In Linq to SQL funktioniert das problemlos, während das Entity Framework eine NotSupportedException auslöst. Das Problem ist hier einmal mehr die Erwartungskonfirmintät, man kommt also nicht um das lesen der Dokumentation herum.

Für das beschriebene Szenario ist im Entity Framework die Klasse SqlFunctions aus dem Namensraum System.Data.Objects.SqlClient gedacht.

Ein kleines Beispiel, wie die Abfrage im Entity Framework aussieht:


var list = from t in ctx.Tasks
                 where t.DueDate == SqlFunctions.DateAdd("d", t.ReminderSignal, DateTime.Today)
                 select t;
Beispiel mit SqlFunctions (C#)

Für mich ist diese Form der Verwendung immer noch gewöhnungsbedürftig, aber es ist ein Weg die Datumsfunktionen innerhalb der Abfragen verwenden zu können.

Ein gravierender Nachteil bei der Verwendung von SqlFunctions ist die Abhängigkeit zum Provider, da die Funktionen auf den Sql Server ausgelegt sind. Wird die gleiche Abfrage bspw. gegen einen MySQL-Server gerichtet (MySQLConnector 6.3.6), so erhält man folgende Fehlermeldung:

Die angegebene Methode 'System.Nullable`1[System.DateTime] DateAdd(System.String, System.Nullable`1[System.Double], System.Nullable`1[System.DateTime])' in Typ 'System.Data.Objects.SqlClient.SqlFunctions' kann nicht in einen Speicherausdruck für 'LINQ to Entities' übersetzt werden.

Eigentlich schade...

Translate this page

Kategorien