web-dev-qa-db-fra.com

Assemblage de référence dans SQLPROJ non déployé sur le serveur

J'ai un projet de base de données Visual Studio 2013 qui prend ne version modifiée de FASTJSON comme référence. J'ai sélectionné Générez DDL dans les propriétés de référence comme indiqué dans cette capture d'écran:

fastJSON property panel

Et dans le fichier .sqlproj msbuild:

<Reference Include="fastJSON">
  <HintPath>..\..\fastjson\output\net40\fastJSON.dll</HintPath>
  <GenerateSqlClrDdl>True</GenerateSqlClrDdl>
</Reference>

Toutefois, Bin/Débug/Project.SQL ne contient pas de ligne pour CREATE Assembly fastJSON . . .. Ajout de l'assemblage fonctionne manuellement et mon projet se déploie et courez ensuite. Que dois-je faire pour obtenir Visual Studio pour déployer mon assemblée?

9
Justin Dearing

J'ai joué un peu pour comprendre ce que ces paramètres font ... Quand j'ai commenté, je n'ai mentionné que ce que nos paramètres sont sans comprendre; Je ne suis pas le projet pour notre migration vers des projets de base de données, donc je ne connaissais pas la minutie de cette affaire.

Le Model Aware La propriété doit être réglée sur True.

Cette propriété est mal documentée, mais de ma compréhension, la permettant d'exposera les objets dans l'assemblage au modèle de base de données afin qu'ils puissent être utilisés dans les emballages SQLCLR (c'est-à-dire CREATE ... EXTERNAL ...) et les références peuvent être résolues. Si le projet n'inclut pas ces objets dans le modèle, il n'ya aucun moyen qu'ils seront scriptés dans la sortie. En outre, s'il y a une référence à un objet dans l'assembly et que cette propriété est définie sur False, le projet ne parviendra pas à construire.

Le Generate Sql Script Propriété que j'ai mentionnée est dans un état de documentation similaire. Cela contrôle si les membres visibles publiquement visibles de l'Assemblée sont automatiquement scripté dans la sortie. Nous avons désactivé pour conserver la flexibilité de la rénumation des wrappers SQLCLR et de manière sélective que seuls les objets dont nous avons besoin. De quelle manière que vous définissez cela est à votre discrétion.

J'espère que cela aide la documentation publique de ces propriétés!

10
Jon Seigel