Я создал систему, которая использует триггеры CLR для подключения к серверу WCF и уведомляет об изменениях в DB. Он работает нормально на SQL Server 2008 R2. Теперь я пытаюсь выполнить миграцию на SQL Server 2012. Для использования WCF мне нужно загрузить сборку SMDiagnostics.dll вдоль остальных. Ive проверил, что clr включен в db, и настроен на то, чтобы быть включенным, и отключил отладку WCF, и проверил, что SQL-сервер работает под учетной записью Local System, поэтому проблем с разрешениями нет. Теперь моя проблема заключается в том, что, когда я выполнить следующую командуMSSQL 2012, создающий триггеры CLR для WCF, не работает
IF NOT EXISTS (SELECT * FROM sys.assemblies asms WHERE asms.name = N'SMdiagnostics')
create assembly [SMdiagnostics]
from 'C:\Windows\Microsoft.NET\Framework\v3.0\Windows Communication Foundation\SMdiagnostics.dll'
with permission_set = unsafe
go
я получаю следующее сообщение об ошибке
Warning: The Microsoft .NET Framework assembly 'smdiagnostics, version=3.0.0.0, culture=neutral, publickeytoken=b77a5c561934e089, processorarchitecture=msil.' you are registering is not fully tested in the SQL Server hosted environment and is not supported. In the future, if you upgrade or service this assembly or the .NET Framework, your CLR integration routine may stop working. Please refer SQL Server Books Online for more details. Msg 6586, Level 16, State 1, Line 2 Assembly 'SMdiagnostics' could not be installed because existing policy would keep it from being used.
SMdiagnostics.dll существует на указанном пути. Как я понимаю, это какая-то политика на SQL-сервере 2012 года или в GAC, однако я не могу найти политики SMdiagnostics. Любые идеи, как их решить? Спасибо.
Люди на форумах MSDN указали, что я пытаюсь загрузить сборки из .net версии 3.0 в SQL Server 2012, который поддерживает фреймворк 4.0 или выше. Это решило некоторые проблемы, но все же я не могу загрузить некоторые сборки, которые мне нужно использовать WCF из триггеров CLR. http://blogs.msdn.com/b/dohollan/archive/2012/04/20/sql-server-2012-sqlclr-net-framework-version.aspx – AlexS