3

我创建了一个报告本地化项目,其中包含一个类文件和三个 .resx 文件。在类文件中,我编写了代码,根据文化找到合适的 .resx 文件,并读取给定键的值。

之后,我建立项目,将 .dll 复制到“ C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\PrivateAssemblies ”并更改 RSPreviewPolicy.config,我在其中添加了一个新的 PermissionSet for Report本地化和一个 CodeGroup 标签授予 .dll 权限。

我所做的下一步是创建报告,引用 .dll 并编写一个表达式来测试本地化。

我收到以下错误:

“无法加载表达式宿主程序集。详细信息:无法加载文件或程序集

我显然错过了一些东西,但我不知道是什么?

有人知道该怎么做吗?

4

1 回答 1

8

我找到了答案。问题是在 Visual Studio 预览模式下查看报告的权限。

首先,我将dll(带有本地化类)放入下一个位置:

C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\PrivateAssemblies

之后,我需要更改RSPreviewPolicy.config存在于同一文件夹位置的文件以应用一些安全权限。

有问题,我提到我已经添加了一个PermisionSet,但现在我确信没有必要这样做。

我刚刚将两个具有权限级别的CodeGroup部分更改Execution为具有FullTrust权限级别,如下所示:

<CodeGroup
    class="UnionCodeGroup"
    version="1"
    PermissionSetName="FullTrust"
    Name="Report_Expressions_Default_Permissions"
    Description="This code group grants default permissions for code in report expressions and Code element. ">
    .
    .
    .
</CodeGroup>
<CodeGroup
    class="FirstMatchCodeGroup"
    version="1"
    PermissionSetName="FullTrust"
    Description="This code group grants MyComputer code Execution permission. ">
    .
    .
    .          
</CodeGroup>

关于您的 Visual Studio 版本,您必须选择适当的文件夹路径:

  • 对于 VS 2015 --- C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\PrivateAssemblies
  • 对于 VS 2013 --- C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\PrivateAssemblies
  • 对于 VS 2010 --- C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\PrivateAssemblies
于 2013-04-11T06:21:59.050 回答