Frage

Nach dieses feature matrix, Visual Studio 2010 Premium - (RC) ist die "statische code-Analyse".

Jedoch hinzufügen, Anrufe zu Contract.Requires zu Beginn meiner Methoden scheint nicht zu haben keine Wirkung.Ich nicht bekommen, Laufzeit Ausnahmen, wenn der Vertrag verletzt wird.Ich nicht bekommen, compiler-Warnungen, wenn ein Vertrag nicht bewiesen werden kann.Ich kann auch nicht finden "Code Contracts" tab in den Einstellungen.

Bin ich etwas fehlt offensichtlich oder ist diese Funktion nur in der Ultimate edition?

War es hilfreich?

Lösung

Es ist in der Tat scheinen einige Verwirrung darüber, ob oder nicht Code-Verträge enthalten in die Rahmen, kommt mit der beta 2 von VS2010, oder sogar in VS2010 selbst.Die Code-Verträge forum (und vor allem diese post) hat mehrere Erwähnungen von diesem mit keine Antwort noch.


Ich glaube nicht, dass Code-Verträge fällt unter die überschrift der statischen code-Analyse.Ich denke, statische code-Analyse bezieht sich auf andere code-Analyse-tools wie FxCop.

Ich habe versucht mit Contract.Requires in VS2010 beta 2 ultimate edition, aber ich bekomme das gleiche Verhalten wie du.Wenn Sie sich in der Projekt-Eigenschaften unter dem Code-Analyse-Fenster können Sie aktivieren, code-Analyse, das bedeutet aber nicht, beziehen sich auf Code-Verträge.

Nach dem Kommentar von Melitta (von der Basis-Klasse Bibliotheken Team) auf den connect-Artikel Daten-Vertrag statische überprüfung verfügbar in der Professional Edition:

...aber die Beschränkung auf die statische Analyse-tool steht für das kommende release.Es hält den code-Analyse-Geschichte konsistent, dass die statische Analyse-tools erfordern die VSTS.

Dies deutet darauf hin, dass Sie (wird) haben die team system version, um den compile-time-version der Code-Verträge.

Andere Tipps

Um die statische Analyse in Beta 2 haben Sie zum Download und installieren Sie die Codebits Contracts (1.2.21023.14 oder höher) von MSDN DevLabs . Dann unter den Projekteigenschaften wird es jetzt einen Code Contracts Tab sein ... von hier aus können Sie auf der statischen Analyse drehen ...

Das Verhalten Sie sehen, ist, da der Kodex Verträge API in mscorlib Baugruppe ist, die behauptet, an die Arbeit erlaubt, aber sonst nichts.

Ich gehe davon aus dem durch RTM nicht nötig sein wird.

Sie müssen sich auf den Code Verträge Laufzeit drehen in den Projekteigenschaften zu überprüfen. Wenn das Einstellungen Bereich nicht existiert, muss der Code Contracts Download von Microsoft (trotz der Tatsache, dass die Contract.Requires im Rahmen vorhanden ist) installieren.

Nur die Laufzeitüberprüfung in der Professional Edition verfügbar ist.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top