インポートされたプロジェクト「C:\ Microsoft.CSharp.targets」が見つかりませんでした


126

Visual Studio 2005でVisual Studio 2008 プロジェクトを開こうとすると、このエラーが発生しました。

インポートされたプロジェクト「C:\ Microsoft.CSharp.targets」が見つかりませんでした。


ファイル内の参照の名前をからに変更するMicrosoft.CSharp.Targets必要がありMicrosoft.CSharp.targetsました.csproj
ステファン

回答:


112

csprojファイルをメモ帳(またはnotepad ++)で開きます。行を見つけます。

<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />

そしてそれを

<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />

22
マインは言う、「<Import Project = "$(MSBuildExtensionsPath32)\ ...」
B.クレイシャノン

@Iomaxx。MonodevelopビルドターゲットをMono / .NET 3.5からMono / .NET 4.0に変更して、この問題を修正しました。
フランク

5
Mineは既にMSBuildBinPathについて述べていますが、名前空間にCompactFrameworkが含まれています:<Import Project = "$(MSBuildBinPath)\ Microsoft.CompactFramework.CSharp.targets" />
Teysz

Monodevelopを使用している場合は、「mono-msbuild」および「mono-msbuild-sdkresolver」のパッケージがインストールされます。注:Linux Manjaroでテストされています。
エドゥアルドルシオ

"msbuild-stable"(または同等の)パッケージがインストールされている場合は、削除する必要があります。注:Linux Manjaroでテストされています。
エドゥアルドルシオ

59

これはグローバルなソリューションであり、特定のパッケージやビンに依存していません。

私の場合、ルートディレクトリからPackagesフォルダーを削除しました。

パッケージが存在するために発生する可能性がありますが、コンパイラが参照を見つけていません。したがって、最初に古いパッケージを削除し、新しいパッケージを追加します。

新しいパッケージ追加する手順

  • まず、packagesフォルダーを削除します(現在のプロジェクトフォルダーの近くまたは1ステップ上)。
  • 次に、プロジェクトまたはソリューションを再起動します。
  • 次に、ソリューションファイルを再構築します。
  • プロジェクトは、nuGetパッケージマネージャーから新しい参照を取得します。そして、あなたの問題は解決されました。

これは適切な解決策ではありませんが、同じ問題に直面しているため、ここに投稿しました。

私の場合、私はビジュアルスタジオで自分のソリューションを開くことさえできず、他のSOの回答について何の助けも得ませんでした。


1
Alf Mohが言うように、コンピューター上の他の場所でそのファイルを見つけて、それを検索しているフォルダーにコピーします
Serj Sagan

はい@SerjSagan、その時に、役立ちますが、時にはあなたはVisual Studioでも、ソリューションファイルを開くことができない私の解決策を助ける...
バーラト

5
Visual Studio for Macでこの問題が発生しMicrosoft.CSharp.targetsました。何らかの理由でファイルが削除されました!あなたが言ったように、私はpackagesフォルダーを削除してVisual Studioを再起動しました、魔法のようにそれはうまくいきました!
A-Sharabiani 2017年

1
これで問題は解決しましたが、私の同僚はこれを初めて機能させることができました。これは機能しますが、他に見つけることができます!
JakePlatford

1
いい奴だ!私はこの上で1時間を失った
ヒューゴナバコップ

20

私にとって問題は、プロジェクトのパスに%20文字が含まれていたことでした。これは、リポジトリの複製時にgitがスペースではなくそれらを追加したためです。別の問題は、パッケージへのパスが長すぎる場合です。


1
これは私にとって問題でした。プロジェクト名にはスペースが含まれていたため、git clone後のディレクトリ名には%20が含まれていました。を使用git clone <RepoUrl> <LocalDirName>して、%20を回避するために複製するディレクトリの名前を指定できます
Dan Cook

11

MSDN上のこのリンクは、それが機能しない理由を理解するのにも役立ちます。$(MSBuildToolsPath)は、Microsoft.Build.Engine v3.5へのパスです(VS2008で作成すると、プロジェクトファイルに自動的に挿入されます)。.Net 2.0用のプロジェクトをビルドする場合は、このパスを$(MSBuildBinPath)に変更してください。これは、Microsoft.Build.Engine v2.0へのパスです。


11

私の場合、ソリューションに5つのプロジェクトのうちの1つをロードできませんでした。

Visual Studio閉じるのに役立ち、フォルダーの下のnugetフォルダーを削除する Microsoft.Net.Compilers.1.3.2必要がありましたpackages

その後、ソリューションを再度開き、プロジェクトが期待どおりに読み込まれます

念のため、フォルダーを削除する前にVSのすべてのインスタンスを閉じてください。


6

私はcsprojファイルに次の行を使用していました:

<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v10.0\WebApplications\Microsoft.WebApplication.targets" />

このファイルを削除すると、正常に動作します。


6

というエラーが発生した場合はMicrosoft.CSharp.Core.targets not found、次の手順で私の問題を修正します。

  1. 以前の作業プロジェクトフォルダーを開き、エラーに示されているリンクに移動します。つまりProjects/(working project name)/packages/Microsoft.Net.Compilers.1.3.2/tools/Microsoft.CSharp.Core.targetsファイルを検索します。

  2. このファイルをコピーして、非稼働プロジェクトに配置しますtools folder(つまり、上記の非稼働プロジェクトのtoolsフォルダーに移動します)。

  3. プロジェクトを閉じて(開いていた場合)、再度開きます。

これで動作するはずです。

また、現在開いているVisual Studioプロジェクトですべてが正しく機能していることを確認するには、に移動しTools > NuGetPackage Manager > Manage NuGet Packages For Solutionます。ここでは、CodeAnalysis.dllが別のアプリケーションによって使用されているというエラーが見つかることがあります。

もう一度、に移動し、tools folder指定したファイルを見つけて削除します。に戻ってくださいManage NuGet Packages For Solution。リロードを要求するリンクが表示され、それをクリックすると、すべてが再インストールされます。

これでプロジェクトは正常に機能するはずです。


3

Windowsを再インストールした後、これを取得しました。Visual Studioがインストールされており、[新しいプロジェクト]ウィンドウにSilverlightプロジェクトタイプが表示されましたが、プロジェクトタイプを開くことができませんでした。解決策はシンプルでした。SilverlightDeveloperランタイムやMicrosoft Silverlight 4 Tools for Visual Studioをインストールする必要がありました。これは馬鹿げているように見えるかもしれませんが、Silverlightプロジェクトタイプが利用可能だったので、うまくいくと思ったので見落としました。


3

私の場合、.csprojファイルをメモ帳で開き、次の3行を削除しました。魅力のように働いた:

<Import Project="..\packages\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.1.0.0\build\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.props" Condition="Exists('..\packages\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.1.0.0\build\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.props')" />
<Import Project="..\packages\Microsoft.Net.Compilers.1.0.0\build\Microsoft.Net.Compilers.props" Condition="Exists('..\packages\Microsoft.Net.Compilers.1.0.0\build\Microsoft.Net.Compilers.props')" />
<Import Project="..\packages\Microsoft.Net.Compilers.1.3.2\build\Microsoft.Net.Compilers.props" Condition="Exists('..\packages\Microsoft.Net.Compilers.1.3.2\build\Microsoft.Net.Compilers.props')" />

2

わかりましたので、次のように言った場合:gt / lt記号の間

Import Project = "$(MSBuildExtensionsPath)\ Microsoft \ Silverlight \ v3.0 \ Microsoft.Silverlight.CSharp.targets" /

ターゲットエラーを修正するにはどうすればよいですか?

また、デモプロジェクト(特に、Rob Eisenburgによる「Build your own MVVM Framework」)でインポート文字列を見つけました。

そのインポートをlomaxx VS2010 RTMによって提案されたものに置き換えると、これをインストールする必要があると報告されます。


2

のエラーの場合Microsoft.WebApplications.targets、次のことができます。

  1. Visual Studio 2010(または開発マシンと同じバージョン)をTFSサーバーにインストールします。
  2. Microsoft.WebApplication.targets」を開発マシンファイルからTFSビルドマシンにコピーします。

これが投稿です。


1

このエラーは、SL 5がインストールされているときに、SL 4でビルドされたSilverlightプロジェクトを開いたときにも発生します。

エラーメッセージの例を次に示します。インポートされたプロジェクト "C:\ Program Files(x86)\ MSBuild \ Microsoft \ Silverlight \ v4.0 \ Microsoft.Silverlight.CSharp.targets"が見つかりませんでした。

v4.0に注意してください。

解決するには、プロジェクトを編集して次を見つけます:

<TargetFrameworkVersion>v4.0</TargetFrameworkVersion>

そして、それをv5.0に変更します。

次にプロジェクトをリロードすると、プロジェクトが開きます(SL 5がインストールされていない場合を除く)。



0

時々、問題は.csprojファイルのハードコードされたVSバージョンにあるかもしれません。あなたがcsprojに次のようなものがある場合:

[...]\VisualStudio\v12.0\WebApplications\Microsoft.WebApplication.targets"

番号が正しいかどうかを確認する必要があります(プロジェクトが別のバージョンのVisual Studioで作成されたことが原因である可能性があります)。間違っている場合は、ビルドツールの現在のバージョンに置き換えるか、VS変数を使用します。

[...]\VisualStudio\v$(VisualStudioVersion)\WebApplications\Microsoft.WebApplication.targets"

0

Ansibleプレイブックの実行中にこの問題に遭遇したので、ここに2セントを追加します。Visual Studio 14が見つからないという警告メッセージに気付きました。VisualStudioバージョン14は2015年にリリースされました。私の問題の解決策は、Azure DevOpsエージェントのホストコンピューターにVisual Studio 2015 Professionalをインストールすることでした。


0

復元を試み、VSを閉じ、失敗したパッケージを削除し、再度開き、復元を試みた後、何度もパッケージ内のすべてを削除し、復元を実行したところ、完全に機能しました。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.