生成用于在Visual Studio 2012中创建XmlSerializers.dll的脚本

时间:2013-10-21 12:16:46

标签: c# .net sql-server visual-studio sqlclr

我正在使用Visual Studio 2012,我编写了一些CLR SQL程序集并将其部署在多个SQL Server上。我添加了调用Web服务的存储过程到此程序集,当我尝试重新部署我的程序集时,它在其中一个服务器上失败。 我有一个错误: 无法加载动态生成的序列化程序集。在某些托管环境中,组件加载功能受到限制,请考虑使用预生成的序列化程序。 我正在使用VS(MySolution.MyProject_Create.sql)生成的脚本创建汇编和存储过程。该脚本创建程序集:

    CREATE ASSEMBLY [AssemblyName]
    AUTHORIZATION [dbo]
    FROM 0xx4D5A9(....)
    WITH PERMISSION_SET = EXTERNAL_ACCESS;

但是没有创建XmlSerializers.dll文件的命令,所以我必须将此文件复制到远程服务器,然后运行命令:

    CREATE ASSEMBLY [AssemblyName.XmlSerializers] FROM
    'C:\path\AssemblyName.XmlSerializers.dll'
    WITH PERMISSION_SET = SAFE

然后手动编写XmlSerializers.dll脚本以避免将此文件复制到其他服务器。

是否可以更改某些设置,以便Visual Studio也为XMLSerializers.dll生成创建脚本?

1 个答案:

答案 0 :(得分:1)

转到项目属性,构建选项卡,并将“生成序列化程序集”设置为“开”。