7

私はAsp.net 5 Webアプリケーションを持っています.Asp.net 5 Webアプリケーションは開発中に正常に動作します(Visual StudioまたはVSコードから問題なく起動できます)。ただし、アプリを正常に公開した後、「web.cmd」で Web サイトを起動しようとすると、次のエラーが表示され、Web サイトが読み込まれなくなります。

Application startup exception: System.IO.FileNotFoundException: Could not load file or assembly 'my-ng2-website' or one of its dependencies. The system cannot find the file specified.
File name: 'my-ng2-website' ---> System.IO.FileNotFoundException: The system cannot find the file specified. (Exception from HRESULT: 0x80070002)
   at System.Reflection.RuntimeAssembly.nLoadFile(String path, Evidence evidence)
   at System.Reflection.Assembly.LoadFile(String path)
   at Microsoft.Dnx.Runtime.Loader.LoadContext.LoadFile(String assemblyPath)
   at Microsoft.Dnx.Runtime.Loader.PackageAssemblyLoader.Load(AssemblyName assemblyName, IAssemblyLoadContext loadContext)
   at Microsoft.Dnx.Runtime.Loader.PackageAssemblyLoader.Load(AssemblyName assemblyName)
   at Microsoft.Dnx.Host.LoaderContainer.Load(AssemblyName assemblyName)
   at Microsoft.Dnx.Host.DefaultLoadContext.LoadAssembly(AssemblyName assemblyName)
   at Microsoft.Dnx.Runtime.Loader.AssemblyLoaderCache.GetOrAdd(AssemblyName name, Func`2 factory)
   at Microsoft.Dnx.Runtime.Loader.LoadContext.LoadAssemblyImpl(AssemblyName assemblyName)
   at Microsoft.Dnx.Runtime.Loader.LoadContext.ResolveAssembly(Object sender, ResolveEventArgs args)
   at System.AppDomain.OnAssemblyResolveEvent(RuntimeAssembly assembly, String assemblyFullName)
   at System.Reflection.RuntimeAssembly._nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, RuntimeAssembly locationHint, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks)
   at System.Reflection.RuntimeAssembly.nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, RuntimeAssembly locationHint, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks)
   at System.Reflection.RuntimeAssembly.InternalLoadAssemblyName(AssemblyName assemblyRef, Evidence assemblySecurity, RuntimeAssembly reqAssembly, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks)
   at System.Reflection.Assembly.Load(AssemblyName assemblyRef)
   at Microsoft.AspNet.Hosting.Startup.StartupLoader.FindStartupType(String startupAssemblyName, IList`1 diagnosticMessages)
   at Microsoft.AspNet.Hosting.Internal.HostingEngine.EnsureStartup()
   at Microsoft.AspNet.Hosting.Internal.HostingEngine.EnsureApplicationServices()
   at Microsoft.AspNet.Hosting.Internal.HostingEngine.BuildApplication()

私は解決策を高低で検索しました。欠落している依存関係がわかりません。私はもう試した

package.lock.json の削除

dnu の復元

プロジェクトの dnx 構成設定は次のとおりです。 ここに画像の説明を入力

パブリッシュの設定は次のとおりです。

ここに画像の説明を入力

この茶葉を読める人はいますか?

4

3 に答える 3

1

良い一日。このタイプのエラーに遭遇することはほとんどありませんでした。多くの場合、欠落しているアセンブリ (最も一般的なもの) を示しています。必要なすべての参照を確認し、[ローカルにコピー] -> [true] に設定すると、ほとんどの場合に役立ちます。Copy Local -> false に設定されている場合、アセンブリ/参照はパブリッシュに含まれないためです。

お役に立てれば。

于 2016-01-21T01:57:52.353 に答える
1

念のため、「ソース ファイルを Nuget パッケージにコンパイルする」を false に設定しました。そして今、それは機能します。

ここに画像の説明を入力

なぜそれが機能するのか、私にはわかりません。しかし、うまくいけば、これは他の誰かを助けるでしょう.

于 2016-01-21T03:45:34.153 に答える
0

このエラーはglobal.json、プロジェクト ディレクトリにあるファイルと関係があります (解決策ではありません)。publishExcludeコンパイル オプションをオンにしてプロジェクトを公開する場合は、必ずproject.json

"publishExclude": [
  "**.user",
  "**.vspscc",
  "global.json"
],
于 2016-04-07T19:38:56.390 に答える