0

VS2010データベースプロジェクトで、ビルドオプション「シリアル化アセンブリの生成」を使用するCLRプロジェクト「MyProject」への参照があります。したがって、MyProjectを生成すると、MyProject.dllとMyProject.XmlSerializers.dllが生成されます。

データベースプロジェクトで[展開]を選択すると、次のエラーが発生します:MyDatabase.dbschema(0,0):エラーTSD00562:この展開が実行されると、[MyProject.XmlSerializers]は削除され、再作成されません。

このエラーを修正する方法は?

ありがとうございました。

4

2 に答える 2

0

私の例では、アセンブリ名は CallWorkflowServiceCLR.dll と CallWorkflowServiceCLR.XmlSerializers.dll です。

展開先サーバー ("my_server_name") にフォルダー "D:\CLRProcedure" を作成して共有します。特に展開用です。

Visual Studio のプロジェクト プロパティ/ビルド イベント/ビルド後のイベント コマンド ラインで、次のように書きました: xcopy /Q /Y "$(TargetDir)*.dll" "\my_server_name\CLRProcedure\"

次に、PostDeployScript.sql に次のように書きました。

if exists (select * from sys.assemblies 
where name = 'CallWorkflowServiceCLR.XmlSerializers')
DROP ASSEMBLY [CallWorkflowServiceCLR.XmlSerializers]

CREATE ASSEMBLY [CallWorkflowServiceCLR.XmlSerializers] 
from 'D:\CLRProcedure\CallWorkflowServiceCLR.XmlSerializers.dll' 

PS:私のプロジェクトのプロパティで:

Build / Generate serialization assembly = ON
Database / Permisssion level = EXTERNAL

また、宛先サーバーを操作する権限を持つユーザー アカウントから Visual Studio を起動する必要があります。

于 2014-03-28T13:49:51.453 に答える
0

ソリューションは Visual C# SQLCLR データベース プロジェクトのセットで、ビルド プロパティの [シリアル化アセンブリの生成] を [オン] にします。 100).aspx . よろしくラコ。

于 2013-07-25T15:34:13.753 に答える