使用Microsoft ReportViewerControl v14时是否需要加载SqlServerTypes?

时间:2018-06-12 15:20:17

标签: c# asp.net reporting-services webforms reportviewer

通过nuget安装报表查看器控件v14包后,在我的项目根目录中创建了一个文件夹“SqlServerTypes”。 有一个readme.htm文件,它建议将一个SqlServerTypes加载代码添加到具有报表查看器控件的Web表单页面。

但我发现即使没有这个SqlServerTypes加载代码,报表查看器仍然可以正常工作。

我想知道是否有必要添加此加载代码。

感谢。

************* readme.htm *************

加载本机程序集所需的操作 若要将使用空间数据类型的应用程序部署到未安装“SQL Server的CLR类型”的计算机,还需要部署本机程序集SqlServerSpatial140.dll。此程序集的x86(32位)和x64(64位)版本已添加到SqlServerTypes \ x86和SqlServerTypes \ x64子目录下的项目中。如果未安装C ++运行库,还包括本机程序集msvcr120.dll。

您需要添加代码以在运行时加载这些程序集中正确的一个(取决于当前的体系结构)。

ASP.NET网站 对于ASP.NET网站,将以下代码块添加到已添加报表查看器控件的Web窗体的代码隐藏文件中:

Default.aspx.cs:

public partial class _Default : System.Web.UI.Page
{
        static bool _isSqlTypesLoaded = false;

    public _Default()
    {
        if (!_isSqlTypesLoaded)
        {
            SqlServerTypes.Utilities.LoadNativeAssemblies(Server.MapPath("~"));
            _isSqlTypesLoaded = true;
        }

    }
    }

**** SqlServerTypes文件夹******

[SqlServerTypes]
Loader.cs 
readme.htm

[SqlServerTypes\x64]
msvcr120.dll
SqlServerSpatial140.dll

[SqlServerTypes\x86]
msvcr120.dll
SqlServerSpatial140.dll

******** Nuget包*********

https://www.nuget.org/packages/Microsoft.ReportingServices.ReportViewerControl.WebForms

Install-Package Microsoft.ReportingServices.ReportViewerControl.WebForms -Version 140.1000.523

0 个答案:

没有答案