1. ホーム
  2. c#

[解決済み] アセットファイル objproject.assets.json にターゲットがない - VS2017

2023-01-29 04:37:25

質問

Visual Studio 2017、AspNetCore 1.1.2使用。

突然ですが、ソリューション内の任意のプロジェクトを公開(Releaseビルド)しようとすると、以下のエラーが表示されます。

Assets file 'C:\exampleobj

を確認しました。 project.assets.json ファイル、持っています。

"targets": {
  ".NETFramework,Version=v4.5.2": {

"runtimes": {
  "win7-x86": {
    "#import": []
  }

私が持っている*.csprojファイルでは。

  <PropertyGroup>
      <TargetFramework>net452</TargetFramework>
  </PropertyGroup>

  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">
      <PlatformTarget>x86</PlatformTarget>
  </PropertyGroup> 

プロジェクト内のconfigは変更していません。ただ、本日VS2017を最新版15.6.3にアップデートしました。これが問題を引き起こす可能性はありますか?

どのように解決するのでしょうか?

Microsoft のブログ (奇妙なことに、私のアカウントには投稿する権限がありません) によると、これは

はバグではなく、完全に ReSharper が原因です。 これを無効にすると、問題は解消されます。

えー、一つ問題があります。このエラーが出るのですが、ReSharperを持っていないのです。

の後に ロット

を探し回った結果、1.0 から 2.1 にアップグレードされた私の .NET Core プロジェクトでエラーが発生する原因を見つけました。

私のプロジェクトを Debug または Release モードで実行すると、すべて正常に動作しましたが、Azure に公開しようとすると、このエラーが発生しました。

Assets file '(mikesproject)\objproject.assets.json' doesn't have a target for '.NETCoreApp,Version=v2.0'. restoreが実行され、プロジェクトのTargetFrameworksに'netcoreapp2.0'が含まれていることを確認してください。

ProjectProperties で .NET Core のバージョンを 2.1 に更新し、さまざまな nuget パッケージをアップグレードしましたが、この変更を拾っていない場所が 1 つありました... Publish Profile ファイルです。

私は Properties\PublishProfiles フォルダを開き .pubxml ファイルを開き、この設定を netcoreapp2.0 から netcoreapp2.1 :

<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <PropertyGroup>
    . . . 
    <TargetFramework>netcoreapp2.0</TargetFramework>
    . . . 
  </PropertyGroup>
</Project>

バカバカしい、ねぇ?

Microsoft のエラーメッセージが、このような問題の原因について、何らかの手がかりを与えてくれればいいのですが。