3分钟学会如何在SQL CLR中使用Spire.PDF创建简单PDF文档以及其他部署

在本文中,我们将看到如何使用Spire.PDF在SQL CLR中创建简单的PDF文档以及如何在SQL Server中部署它。

SQL CLR是用于在SQL Server中托管Microsoft .NET公共语言运行时引擎的技术。SQLCLR允许托管代码由Microsoft SQL Server环境托管并在其中运行。

这种技术是在Microsoft SQL Server 2005中引入的,例如,允许用户使用.NET语言(例如C#或VB.NET)在SQL Server中创建以下类型的托管代码对象。

  • 存储过程
  • 用户定义的聚合
  • 扳机
  • 用户定义类型
  • 用户定义的功能

在本文中,我们将看到如何使用Spire.PDF在SQL CLR中创建简单的PDF文档以及如何在SQL Server中部署它。只需按照以下步骤操作,即可完成。

启用SQL CLR集成

对于SQL Server,SQL CLR程序集是外部代码,因此在SQL Server默认安装配置中,SQL CLR被阻止不使用,要使用它,必须首先将其打开。

  • 打开SQL Server Management Studio,连接并创建一个名为SpirePDFCLR的新数据库。
  • 使用以下代码启用SQL CLR。
    <font style="vertical-align: inherit;"><font style="vertical-align: inherit;">sp_configure'启用clr',1</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">走</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">重新配置</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">走</font></font><font></font>

    3分钟学会如何在SQL CLR中使用Spire.PDF创建简单PDF文档以及其他部署

现在,SQL Server准备执行使用C#编程语言构建的数据库对象。

添加依赖程序集

为了使用非SAFE CLR组件,首先,我们需要打开“可信任”。

<font style="vertical-align: inherit;"><font style="vertical-align: inherit;">ALTER DATABASE SpirePDFCLR设置为可信任</font></font>

现在,我们可以通过以下代码添加依赖程序集。

<font style="vertical-align: inherit;"><font style="vertical-align: inherit;">创建组件[System.Windows.Forms] </font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">从'C: WINDOWS  Microsoft.NET  Framework  v2.0.50727  System.Windows.Forms.dll'</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">WITH PERMISSION_SET =不安全</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">创建组件[System.Web] </font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">从'C: Windows  Microsoft.NET  Framework  v2.0.50727  System.Web.dll'</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">WITH PERMISSION_SET =不安全</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">创建组件[Microsoft.mshtml]</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">FROM'C: Windows  Microsoft.NET  Framework  v2.0.50727  Microsoft.mshtml.dll'</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">WITH PERMISSION_SET =不安全</font></font><font></font>

添加这些程序集后,我们可以添加Spire.Pdf.Dll。

<font style="vertical-align: inherit;"><font style="vertical-align: inherit;">创建组件[Spire.Pdf] </font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">从'D: NET2.0  Spire.Pdf.dll'</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">WITH PERMISSION_SET =不安全</font></font><font></font>

然后转到对象浏览器,选择SpirePDFCLR数据库,右键单击并选择“ 刷新 ”。它们将显示在“程序集”下,如下所示。

3分钟学会如何在SQL CLR中使用Spire.PDF创建简单PDF文档以及其他部署

在SQL CLR中创建和处理PDF文档

将Spire.Pdf.dll添加到数据库后,我们可以在SQL CLR中创建和操作PDF文档。这里我们以存储过程为例。

3分钟学会如何在SQL CLR中使用Spire.PDF创建简单PDF文档以及其他部署

将以下代码放入存储过程中。当我们执行存储过程时,它将创建一个PDF文档。

<font style="vertical-align: inherit;"><font style="vertical-align: inherit;">使用系统;</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">使用System.Data;</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">使用System.Data.SqlClient;</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">使用System.Data.SqlTypes;</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">使用Microsoft.SqlServer.Server;</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">使用Spire.Pdf;</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">使用Spire.Pdf.Graphics;</font></font><font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">公共局部类UserDefinedFunctions</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">{</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">    [Microsoft.SqlServer.Server.SqlProcedure]</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">    公共静态无效StoreProcedure()</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">    {</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">        PdfDocument doc =新的PdfDocument();</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">        PdfPageBase页面= doc.Pages.Add();</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">        page.Canvas.DrawString(“ Hello world”,new PdfFont(PdfFontFamily.Courier,100),PdfBrushes.Black,0,0);</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">        doc.SaveToFile(“ d:\ result.pdf”);</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">    }</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">};</font></font><font></font>

下一步构建并部署解决方案。如果一切正常,则表示部署成功。然后,我们将在SpirePDFCLR数据库中看到存储过程。

3分钟学会如何在SQL CLR中使用Spire.PDF创建简单PDF文档以及其他部署

现在,我们将从SQL Server运行存储过程,但是在这里我们将得到如下错误。

3分钟学会如何在SQL CLR中使用Spire.PDF创建简单PDF文档以及其他部署

我们需要将CLR项目的权限级别更改为不安全,然后再次部署它。

3分钟学会如何在SQL CLR中使用Spire.PDF创建简单PDF文档以及其他部署

现在再次运行它,它将正常工作,我们将获得PDF文档。

3分钟学会如何在SQL CLR中使用Spire.PDF创建简单PDF文档以及其他部署
标签:

来源:慧都

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2020年3月12日
下一篇 2020年3月12日

相关推荐

发表回复

登录后才能评论