VisualStudio2017でMicrosoftReportを使って開発しています。
4/10までは真っ当に動いていたのですが、今朝動かしてみると、エラー一覧に何も表示されていないのにビルドできなくなっていました。
作業中のプログラム以外もMicrosoftReportを使っているプログラムは全てビルドできなくなっており、調べた結果、どうやらレポートのrdlcファイルが悪いことがわかりました。が、どうすれば元通り動くのかがわかりません。
下はrdlcファイルの中身です。
<?xml version="1.0" encoding="utf-8"?> <Report xmlns="http://schemas.microsoft.com/sqlserver/reporting/2008/01/reportdefinition" xmlns:rd="http://schemas.microsoft.com/SQLServer/reporting/reportdesigner"> <Width>6.5in</Width> <Body> <Height>2in</Height> </Body> <rd:ReportTemplate>true</rd:ReportTemplate> <Page> </Page> </Report>
xmlns:rd="http://schemas.microsoft.com/SQLServer/reporting/reportdesigner"のURLにアクセスすると、> The resource you are looking for has been removed, had its name changed, or is temporarily unavailable.
という文字が表示されます。ここが悪いんじゃないかと思うのですが、確認したことがなく、今までもURLが生きていたのか定かではありません。また、悪かったとして、ではどこのURLに繋げばいいのかも不明です。
念のため、packages.configファイルも書いておきます。
<?xml version="1.0" encoding="utf-8"?> <packages> <package id="Microsoft.ReportingServices.ReportViewerControl.Winforms" version="150.900.148" targetFramework="net461" /> <package id="Microsoft.SqlServer.Types" version="14.0.314.76" targetFramework="net461" /> </packages>
MicrosoftReportはこちらのサイトのとおりに設定しています。アプリのターゲットフレームワークは.NET Framework 4.6.1です。Visualstudioの修復インストールと再起動、『Microsoft Rdlc Report Designer for Visual Studio』の再インストールはすでに行っています。
どうすれば元通りレポート開発ができるようになるでしょうか?
よろしくお願いします。
2019/04/12
回答でいただいたサイトからリンクを辿り、SSDTをインストールしたVisualStudioのデザイナで開きレポート定義ファイルのアップグレードを行いました。
自動で作成されたバックアップファイルの中身が
<?xml version="1.0" encoding="utf-8"?> <Report xmlns="http://schemas.microsoft.com/sqlserver/reporting/2010/01/reportdefinition" xmlns:rd="http://schemas.microsoft.com/SQLServer/reporting/reportdesigner"> <Width>6.5in</Width> <Body> <Height>2in</Height> </Body> <rd:ReportTemplate>true</rd:ReportTemplate> <Page> </Page> </Report>
となっていたので、バックアップファイルと現行のRDLCファイルの中身を移し替えました(バックアップじゃないほうのファイルは2008のままでした)。
すると、
シリアル化を解除できませんでした: 要素 名前空間 'http://schemas.microsoft.com/sqlserver/reporting/2010/01/reportdefinition' の 'Report' には無効な子要素 名前空間 'http://schemas.microsoft.com/sqlserver/reporting/2010/01/reportdefinition' の 'Width' が含まれています。必要とされる要素は 名前空間 'http://schemas.microsoft.com/sqlserver/reporting/2010/01/reportdefinition' の 'Description, Author, AutoRefresh, InitialPageName, DataSources, DataSets, ReportParameters, Code, EmbeddedImages, Language, CodeModules, Classes, CustomProperties, Variables, DeferVariableEvaluation, ConsumeContainerWhitespace, DataTransform, DataSchema, DataElementName, DataElementStyle, ReportSections' および 名前空間 '##other' のすべての要素 です。 行 3、位置 4。
というエラーが出てしまいました。
移動せずにそのまま動かそうとしても、やはりビルドすらできずpackagesファイルに「'packages' 要素が宣言されていません。」という警告がでるばかりです。
rdlcファイルを消せば動くあたり、このファイルに問題があるとみて間違いないとは思うのですが……。
私のやり方が悪いのでしょうか?
引き続き、ご協力をお願いいたします。
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2019/04/14 23:30 編集