簡體   English   中英

無法發布將類庫引用到Azure的ASP.NET 5

[英]Cannot publish ASP.NET 5 that references a class library to Azure

最初我有一個可以發布到Azure的ASP.NET 5項目,沒有任何問題。 然后我決定將DAL拆分為一個單獨的類項目,但遇到了許多依賴問題。 然后我決定用空白類庫創建一個空白項目,看看我是否能解決問題所在,但我甚至都無法發布。

腳步:

  1. 創建新的ASP.NET 5 Web API預覽模板項目(也創建解決方案)。
  2. 將類庫添加到解決方案中。
  3. 從4.6更改類庫目標框架到.NET 4.5.1
  4. ASP.NET 5項目中的引用類庫。
  5. 嘗試發布。

這是項目結構:

在此輸入圖像描述

生成的ASP.NET 5 project.json

"frameworks": {
    "dnx451": {
        "dependencies": {
            "ClassLibrary1": "1.0.0-*"
        }
    },
    "dnxcore50": { }
},

所以它成功引用,我可以在自托管上構建和部署,但如果我嘗試將其發布到Azure,我會收到以下錯誤消息:

The "Dnu" task failed unexpectedly.
System.Exception: 
Microsoft .NET Development Utility CLR-x86-1.0.0-beta6-12256
Copying to output path C:\Users\MyUserDir\AppData\Local\Temp\PublishTemp
Time elapsed 00:00:04.1309210

   at Microsoft.DNX.Tasks.Dnu.Execute()
   at      Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHost.Execute()
   at Microsoft.Build.BackEnd.TaskBuilder.    <ExecuteInstantiatedTask>d__26.MoveNext()

我使用的是Visual Studio 2015和ASP.NET 5 Beta 7。

編輯:經過一些游戲,我不認為我的答案是正確的。 我現在意識到有些情況下不能使用新類型的類庫,例如現有的舊類庫,這對端口來說可能是不切實際的。 有辦法做到這一點嗎?

我嘗試過做dnu publish ,它發布完全沒問題。 然后我將輸出FTP到服務器,但然后它給我一個Runtime Error 我嘗試使用Visual Studio遠程調試它。 我可以看到當我訪問網站時拋出異常,但我無法確定問題究竟是什么。 拋出的第一個例外之一是:

Exception thrown: 'System.InvalidOperationException' in AspNet.Loader.dll

當我查看日志時,它給了我Couldn't determine an appropriate version of runtime to run.

事實證明我使用的是不正確的類庫項目。 我顯然使用舊的類庫而不是新的PREVIEW版本,它也標有(Package)

班級圖書館計划

這個描述讓我有點意思,因為它說它用於創建NuGet包但現在一切正常,ASP.NET 5項目可以部署到Azure並成功引用類庫。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM