C#でWindowsアプリケーションを開発していると、次のようなエラーメッセージに出くわすことがあります。
エラー CS0012: 型 ‘Package’ は、参照されていないアセンブリに定義されています。アセンブリ ‘WindowsBase, Version=3.0.0.0, Culture=neutral, PublicKeyToken=67ah822hj914e20’ に参照を追加する必要があります。
私も実際にこのエラーに遭遇しましたが、Visual Studioで「WindowsBase」アセンブリを参照に追加することで解決できました。この記事では、その手順と注意点をまとめています。
原因:WindowsBaseがプロジェクトに参照されていない
このエラーは、.NET Framework の一部である System.IO.Packaging.Package クラスなどを使おうとした際に発生します。
このクラスは「WindowsBase.dll」に含まれており、参照が設定されていないとコンパイルエラーとなります。
解決策:WindowsBaseをプロジェクトに参照追加する
以下の手順でVisual StudioからWindowsBaseを追加してください。
Visual Studioでの参照追加手順
- Visual Studioで該当プロジェクトを開きます
- ソリューションエクスプローラーでプロジェクト名を右クリック
- [追加]→[参照] を選択
- 「参照マネージャー」が開いたら、**[アセンブリ]→[フレームワーク]**を選択
- 検索ボックスに「WindowsBase」と入力
- 表示された WindowsBase にチェックを入れます
- [OK]ボタンをクリックしてダイアログを閉じます
これで参照が追加され、エラー CS0012 は解消されるはずです。
補足:.NET Core / .NET 5/6/7 を使用している場合の注意点
プロジェクトが .NET Framework ではなく、.NET Core や .NET 5/6/7 の場合、WindowsBase.dllが標準で含まれていない可能性があります。
その場合は以下を検討してください。
- System.IO.Packaging を使用している場合:
WindowsBaseではなく 別のNuGetパッケージの導入が必要なケースがあります(例:System.IO.Packaging)。 - OpenXML SDKを使用している場合:
DocumentFormat.OpenXmlパッケージでPackageクラスを扱うためには、WindowsBaseへの依存関係が必要になることがあります。
関連エラーが出るタイミングの例
このエラーは以下のようなコードを記述したときに出ることがあります。
csharpコピーする編集するusing System.IO.Packaging;
Package package = Package.Open("sample.xlsx", FileMode.Open, FileAccess.Read);
この場合、WindowsBase の参照がなければコンパイルできません。
まとめ
| 項目 | 内容 |
|---|---|
| エラーコード | CS0012 |
| 原因 | 必要なアセンブリ(WindowsBase)がプロジェクトに参照されていない |
| 対応 | Visual StudioからWindowsBaseを手動で参照追加する |
| 補足 | .NET Core系では別パッケージを検討する必要がある |
副業から独立まで「稼げる」Webスキルを習得する(PR)
ここまで読んでいただきありがとうございます。 最後に宣伝をさせてください。
「副業を始めたいが、何から手をつければいいかわからない」「独学でスキルはついたが、収益化できていない」という悩みを持つ方には、マンツーマン指導のWebスクール**「メイカラ」**が適しています。
このスクールは、単に技術を教えるだけでなく、**「副業として具体的にどう稼ぐか」**という実務直結のノウハウ提供に特化している点が特徴です。
講師陣は、実際に「副業Webライターから1年で独立して月収100万円」を達成したプロや、現役で利益を出し続けているブロガーなど、確かな実績を持つプレイヤーのみで構成されています。そのため、机上の空論ではない、現場で通用する戦術を学ぶことができます。
副業に特化した強み
- 最短ルートの提示: 未経験からでも実績を出せるよう、マンツーマンで指導。
- AI活用の習得: 副業の時間対効果を最大化するための、正しいAI活用スキルも網羅。
- 案件獲得のチャンス: 運営がWebマーケティング会社であるため、実力次第で社内案件の紹介など、仕事に直結する可能性があります。
受講者の多くは、「在宅でできる仕事を探している」「副業を頑張りたい」という20代・30代・40代が中心です。
受講前には、講師による無料説明が行われます。無理な勧誘はなく、自分に合った副業スタイルやプランを相談できるため、まずは話を聞いてみることから始めてみてはいかがでしょうか。
