0

Microsoft Enterprise Library のバージョン 5 を使用するアセンブリを参照する MVC3 アプリケーションで作業しています。

ReportViewer を使用してレポートを作成するための調査プロジェクトを行っています。ReportViewer は Razor ビューでは使用できないことを知ったので、ASPX ページを使用する必要があります。ページは以下です。

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Index.aspx.cs" Inherits="Test.BirthdayReport.BirthdayReport" %>

<%@ Register Assembly="Microsoft.ReportViewer.WebForms, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
Namespace="Microsoft.Reporting.WebForms" TagPrefix="rsweb" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
    <head runat="server">
        <title>Birthday Report</title>
    </head>
    <body>
        <form id="form1" runat="server">
        <div>
            <asp:ScriptManager ID="ScriptManager1" runat="server"></asp:ScriptManager>
            <rsweb:ReportViewer ID="ReportViewer1" runat="server" Width="100%">                        </rsweb:ReportViewer>
        </div>
        </form>
    </body>
</html>

ReportViewer を使用するには、ScriptManager を含める必要がありますが、ページが読み込まれると次のエラーが表示されます。

ファイルまたはアセンブリ 'Microsoft.Practices.EnterpriseLibrary.Common, Version=4.1.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' またはその依存関係の 1 つを読み込めませんでした。見つかったアセンブリのマニフェスト定義がアセンブリ参照と一致しません。(HRESULT からの例外: 0x80131040)

bin ディレクトリに 4.0 と 5.0 の両方の EnterpriseLibrary アセンブリを配置できないことはわかっているので、5.0 バージョンの Microsoft.Practices.EnterpriseLibrary.Common への参照をプロジェクトに追加しようとしましたが、それでも同じエラーが発生します。

EnterpriseLibary 5.0 で ScriptManager を使用するにはどうすればよいですか?

4

1 に答える 1

0

別のアセンブリ (Web アプリケーションで使用) は、EnterpriseLibrary.Common 5、EnterpriseLibrary.Logging 5、EnterpriseLibrary.Data 4.1、および EnterpriseLibrary.Logging.Database 4.1 を参照していました。

このアセンブリがこれらすべてのアセンブリの 5.0 バージョンを参照していることを確認すると、エラーが停止しました。

于 2012-10-29T14:19:58.677 に答える