Tags: , , | Posted by AlexanderZeitler on 12/28/2007 9:54 AM | Comments (0)

Folgendes Problem tauchte eben beim Schreiben eines Unit-Test mit C# 3.0 auf.

Mit folgendem Code wird eine Liste von Einträgen gelesen:

IEnumerable entries = target.Select(995642);

Danach sollte mittels

actual = entries.Count();

die Anzahl der Einträge in entries bestimmt werden können.

Allerdings stand die Methode Count nicht zur Verfügung. Zunächst dachte ich, dass mir die IntelliSense einen Streich gespielt hätte, allerdings konnte ich dies schnell ausschließen.

Nach einigem Suchen fand ich des Rätsels Lösung:

Count ist eine Extension Method, welche im System.Linq Namespace definiert wird und genau auf diesen Namespace fehlte eine Referenz, sprich ein einfaches

using System.Linq;

löste das Problem.

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5
Tags: , , | Posted by AlexanderZeitler on 12/17/2007 2:41 PM | Comments (1)

Eben ereilte mich beim Öffnen einer bestehenden VisualStudio-Solution mit Datenbank-Projekt folgende Fehlermeldung:

FailedToAttachDatabase

Die Lösung: es existierte eine .user-Datei (eines anderen Users) für das Datenbankprojekt. Einfach die .user-Datei löschen / umbenennen, schon lädt das Projekt wieder.

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5
Tags: | Posted by AlexanderZeitler on 12/14/2007 8:52 AM | Comments (0)

Ein WCF ServiceHost in einer Konsolen-Applikation ist schnell eingetippt:

string hostIP = Dns.GetHostEntry(Dns.GetHostName()).AddressList[0].ToString();
#if CLIENT_DISCOVERY_BUILD
            Uri address = new Uri(string.Format("http://localhost:8000/myservice", hostIP));
#else 
            Uri address = new Uri(string.Format("http://{0}:8000/myservice", hostIP));
#endif
            
ServiceHost serviceHost = new ServiceHost(typeof(MyService), address);
try {
            serviceHost.AddServiceEndpoint(typeof(IMyService),
                        new BasicHttpBinding(),
                        "MyService");


#if CLIENT_DISCOVERY_BUILD
            ServiceMetadataBehavior smb = new ServiceMetadataBehavior();
            smb.HttpGetEnabled = true;
            serviceHost.Description.Behaviors.Add(smb);
#endif
                serviceHost.Open();

            Console.WriteLine(
                        string.Format("MyService is running at {0})", address.ToString()));
            Console.WriteLine("Press  to terminate");
            Console.ReadLine();
            serviceHost.Close();
}

catch (CommunicationException ce) {
            Console.WriteLine("An exception occured: {0}", ce.Message);
            serviceHost.Abort();
            Console.ReadLine();
}

Startet man den Host nun via F5 aus Visual Studio, erhält man unter Windows Vista folgende Fehlermeldung:

"An exception occured: HTTP could not register URL http://+:8000/MyService/. Your process does not have access rights to this namespace (see http://go.microsoft.com/fwlink/fwlinkId=70353 for details)."

WCFConsoleHostProcessAccessRightsError

Klickt man auf den o.g. Link ("70353"), kommt man relativ schnell zu folgender (vermeintlichen) Lösung:

Kommandozeile als Administrator ausführen und folgende Befehl absetzen:

netsh http add urlacl url=http://+:8000/MyService user=MYDOMAIN\MyUser

Danach startet man voller Erwartungen den ServiceHost per F5-Taste erneut und - die gleiche Fehlermeldung erscheint.

Der Grund hierfür ist, dass der WCF-Prozess außerdem Administrator-Rechte benötigt.

Um dies zu gewährleisten und den bekannten Permit / Deny Dialog zu öffnen, muß dem Projekt eine .Manifest-Datei hinzugefügt werden ("Add New Item" / "Application Manifest File" / "app.Manifest"), die wie folgt aussieht:



  
  
    
      
            
          
      
    
  

Startet man nun den Host nochmals per F5, erscheint folgende Meldung:

VSElevated

Klickt man nun auf "Restart under different credentials", startet Visual Studio nach der entsprechenden Bestätigung als Administrator. Nach dem erneuten Laden der Solution startet der Service Host nun wie gewünscht:

ServiceHostElevated

Ein nützliches Tool in diesem Zusammenhang, um die Berechtigungen des Users nicht per netsh setzen zu müssen, ist der HttpNamespaceManager:

HttpNsManager

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5
Tags: | Posted by AlexanderZeitler on 12/14/2007 2:33 AM | Comments (0)

Microsoft hat ein Video zum Entity Data Model Designer CTP 2 veröffentlicht:

Entity Data Model Designer

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5
Tags: , , | Posted by AlexanderZeitler on 12/14/2007 2:12 AM | Comments (0)

Nachdem ich mich gestern mit Albert über das Thema Mocking unterhalten habe (bzw. mir Tipps dazu geben lies), hier gleich mal ein Link dazu:

Die Rhino.Mocks Quick Reference von Oran Dennison:

RhinoMocksQuickReference

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5
Tags: , , , , , , | Posted by AlexanderZeitler on 12/14/2007 1:36 AM | Comments (3)

Microsoft hat diverse Hands on Labs und Beispiele zu o.g. Technologien veröffentlicht:

Visual Basic

Visual C#

Visual C++ Samples

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5
Tags: , | Posted by AlexanderZeitler on 12/14/2007 1:11 AM | Comments (0)

In der ASP.NET web.config hat sich mit der Veröffentlichung des .NET Framework 3.5 einiges geändert.

Die Änderungen erklärt Scott Mitchell in seinem Artikel "Dissecting ASP.NET Version 3.5's Web.config File".

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5
Tags: , , | Posted by AlexanderZeitler on 12/14/2007 12:52 AM | Comments (2)

Mikhail Arkhipov hat seinen Spell checker 2.0 für Visual Studio 2005 und 2008 veröffentlicht.

Neu hinzugekommen ist die Unterstützung für Kommentare in HTML, ASP.NET, JScript, C#, C++, CSS, C, VB.NET und VBScript.

Vorraussetzung ist die Installation von Word 2003 oder 2007.

SpellCheck2008

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5
Tags: , | Posted by AlexanderZeitler on 12/12/2007 8:59 PM | Comments (0)

Nikhil Kothari zeigt in seinem Blog Post "Ajax with the ASP.NET MVC Framework", wie man eine ASP.NET MVC Applikation um AJAX-Features erweitern kann.

TaskList mit AJAX und ASP.NET MVC

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5
Tags: | Posted by AlexanderZeitler on 12/12/2007 6:51 PM | Comments (0)

Seit Montag sind die Power Toys for .NET Compact Framework 3.5 verfügbar.

Hierbei handelt es sich um folgende Tools für das .NET Compact Framework 3.5:

  • Remote Performance Monitor and GC Heap Viewer
  • NETCF CLR Profiler
  • App Configuration Tool (NetCFcfg.exe)
  • NETCF ServiceModel Metadata Tool
  • Remote Logging Configuration Tool
  • NETCF Network Log Viewer

Insbesondere das NETCF ServiceModel Metadata Tool ist unerlässlich für die Entwicklung von CF-basierten WCF-Clients.

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5