sql >> Databasteknik >  >> RDS >> Sqlserver

SQL Server CLR:hur man anropar WCF Service I CLR SQL lagrad procedur i databasprojekt

Jag hittade detta efter mycket letande och spenderade mycket tid på detta i VS 2014

  1. Skapa Databasprojekt Kallas "CLR_Test"
  2. Skapa bibliotek För WCF-klienten "CLR_Service_Client"
  3. Lägg till Serivce Refrence av wcf-tjänsten till "CLR_Test" och lägg sedan till referensen för "CLR_Service_Client" i "CLR_Test"
    4. Du måste ändra DB-alternativet för att kunna köra osäkra sammanställningar med koden nedan

    ÄNDRA DATABAS SaleAutomation STÄLL PÅ TROLIGT PÅ ÅTERKONFIGURERA

  4. I "CLR_Test" Projektegenskaper i SQLCLR flikuppsättning Behörighetsnivå till Osäkert (ett annat sätt finns att efter publicering av projektet ändrar du dess nivå från sql-serverhantering och ett annat sätt är att du lägger till behörighetsnivå till skriptet för publicering kan du använda var och en av dem,
    men du måste märka att om du använder från
    code>projektegenskaper endast "CLR_Test"-projekt skapar automatiskt Osäkert och du måste använda andra sätt för att ställa in "CLR_Service_Client" Osäkert )

    6.Kör detta skript för att lägga till Sqlserver för att kunna köra wcf-tjänst

CREATE ASSEMBLY 
SMDiagnostics from
'C:\Windows\Microsoft.NET\Framework\v3.0\Windows Communication Foundation\SMDiagnostics.dll'
with permission_set = UNSAFE
GO

CREATE ASSEMBLY 
[System.Web] from
'C:\Windows\Microsoft.NET\Framework64\v2.0.50727\System.Web.dll'
with permission_set = UNSAFE
GO

CREATE ASSEMBLY 
[System.Messaging] from
'C:\Windows\Microsoft.NET\Framework\v2.0.50727\System.Messaging.dll'
with permission_set = UNSAFE
 GO

CREATE ASSEMBLY  
[System.IdentityModel] from
'C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\v3.0\System.IdentityModel.dll'
with permission_set = UNSAFE
GO

CREATE ASSEMBLY  
[System.IdentityModel.Selectors] from
'C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\v3.0\System.IdentityModel.Selectors.dll'
with permission_set = UNSAFE
GO

CREATE ASSEMBLY -- this will add service modal
[Microsoft.Transactions.Bridge] from
'C:\Windows\Microsoft.NET\Framework\v3.0\Windows Communication Foundation\Microsoft.Transactions.Bridge.dll'
with permission_set = UNSAFE
GO

CREATE ASSEMBLY -- this will add service modal
[System.Runtime.Serialization] from
'C:\Windows\Microsoft.NET\Framework\v3.0\Windows Communication Foundation\System.Runtime.Serialization.dll'
with permission_set = UNSAFE
GO
CREATE ASSEMBLY -- this will add service modal
[System.ServiceModel] from
'C:\Windows\Microsoft.NET\Framework\v3.0\Windows Communication Foundation\System.ServiceModel.dll'
with permission_set = UNSAFE
GO
  1. nu publicerar du ditt projekt och kör den lagrade proceduren och njut.


  1. SQL Server c#-anslutning

  2. Bästa matchning med MySQL och PHP

  3. Oracle BLOB-datatyp till RichTextBox

  4. Hur kan jag uppdatera tabell, om tabell finns med MySQL-information?