Benutzer mit den meisten Antworten
Hinzufügen von Assembly-Verweisen in einem SQLServer-Projekt (C#) - beschränkt?

Frage
-
Wie kann ich meinem SQLServer-Projekt im Visual Studio weitere Assembly-Verweise hinzufügen?
Zurzeit habe ich nur den leeren Reiter "Projekte" und einen Reiter "SQL Server".
Nicht verfügbar sind - wie in herkömmlichen C#-Projekten - die Reiter ".Net", "COM", "Durchsuchen" und "Aktuell".
Ich möchte weitere Klassen aus .NET und eigene DLLs einbinden, habe dazu (momentan) aber keine Möglichkeit.
Dass in SQLServer-Projekten wirklich nur ein begrenzter Kreis von Pakete zugelassen sei, glaube ich nicht, weil im im Web bereits andere Beispiele sah.Wer kann mir weiterhelfen?
Antworten
-
Hallo,
grundsätzlich kann man auch andere Assemblies als die direkt unterstützten verwenden,
so sie denn die Voraussetzungen erfüllen, siehe: Unterstützte .NET Framework-Bibliotheken
und auch http://support.microsoft.com/kb/949080
Eine launigere Beschreibung: http://www.sqldevelop.com/visual-studio-and-deployment-of-sqlclr-assemblies/
Nur sollte man sich über die Konsequenzen im klaren sein, was zunächst heißt
den kompletten Abschnitt zur CLR-Integration gelesen und verstanden haben,
insbesondere (aber nicht nur): Sicherheit der CLR-Integration
Denn eine nicht wirklich auf Herz und Nieren geprüfte Assembly kann
am Ende mehr Schaden als nutzen. Denn bei Fehlern in einer Assembly
wird er unter Umständen gezwungen, die vollständige AppDomain zu entladen.
Was zu massiven Performance Problemen führen kann.
Das Modell einer Constraint Region Execution wurde extra für Umgebungen
wie den SQL Server in NET 2.0 eingeführt - und hat die Veröffentlichung
von .NET wie SQL Server 2005 um einige Monate verschoben,
so dass aus SQL Server 2005 beinahe 2006 geworden wäre
(was zumindest die Komplexität des Unterfangens zeigen sollte).
Bei anderen als den ausgewiesenen Assemblies wird das nicht garantiert
und bei Dritt-Herstellern sollte man prüfen, ob sie die Richtlinien einhalten
(mir sind noch keine untergekommen).
Wenn Du größeres vorhast, solltest Du Dir anschauen:
http://www.codeplex.com/sqlclrproject
Gruß Elmar
- Als Antwort vorgeschlagen Robert BreitenhoferModerator Donnerstag, 4. März 2010 17:01
- Als Antwort markiert Robert BreitenhoferModerator Montag, 8. März 2010 15:03
Alle Antworten
-
Hallo,
grundsätzlich kann man auch andere Assemblies als die direkt unterstützten verwenden,
so sie denn die Voraussetzungen erfüllen, siehe: Unterstützte .NET Framework-Bibliotheken
und auch http://support.microsoft.com/kb/949080
Eine launigere Beschreibung: http://www.sqldevelop.com/visual-studio-and-deployment-of-sqlclr-assemblies/
Nur sollte man sich über die Konsequenzen im klaren sein, was zunächst heißt
den kompletten Abschnitt zur CLR-Integration gelesen und verstanden haben,
insbesondere (aber nicht nur): Sicherheit der CLR-Integration
Denn eine nicht wirklich auf Herz und Nieren geprüfte Assembly kann
am Ende mehr Schaden als nutzen. Denn bei Fehlern in einer Assembly
wird er unter Umständen gezwungen, die vollständige AppDomain zu entladen.
Was zu massiven Performance Problemen führen kann.
Das Modell einer Constraint Region Execution wurde extra für Umgebungen
wie den SQL Server in NET 2.0 eingeführt - und hat die Veröffentlichung
von .NET wie SQL Server 2005 um einige Monate verschoben,
so dass aus SQL Server 2005 beinahe 2006 geworden wäre
(was zumindest die Komplexität des Unterfangens zeigen sollte).
Bei anderen als den ausgewiesenen Assemblies wird das nicht garantiert
und bei Dritt-Herstellern sollte man prüfen, ob sie die Richtlinien einhalten
(mir sind noch keine untergekommen).
Wenn Du größeres vorhast, solltest Du Dir anschauen:
http://www.codeplex.com/sqlclrproject
Gruß Elmar
- Als Antwort vorgeschlagen Robert BreitenhoferModerator Donnerstag, 4. März 2010 17:01
- Als Antwort markiert Robert BreitenhoferModerator Montag, 8. März 2010 15:03