[英]How do I build a .net application on a remote server?
這個問題可能更多是關於我不知道術語而不是任何東西。 作為參考,我來自“在PHP/wordpress中建立網站然后將文件拖放到FTP - 繁榮網站工作”的背景
我已經構建了一個在 Visual Studio 中本地運行的 .NET 應用程序。 那里一切都很好。 如果這很重要,它是使用 Sitefinity nuget 包構建的。
我啟動了一個遠程 Windows 服務器並通過 IIS 管理器和我找到的教程配置了 IIS。 我將我的應用程序文件(通過 Git)移到了這個服務器上,並將這個東西指向了我的文件。 我現在可以轉到localhost/SitefinityTest
並查看該站點。
除了頁面之外,我收到錯誤。 我不認為這些是應用程序的錯誤(同樣,在 VS 中本地工作得很好)但是我部署它的方式有問題。
Could not load file or assembly 'Telerik.Sitefinity' or one of its dependencies. The system cannot find the file specified.
我的第一個想法是缺少某些東西。 乍一看,packages 目錄根本不存在,所以我將它從本地復制粘貼到我的服務器中。 沒變。
- C:\SitefinityTest
- SitefinityTest (this is where my server is pointing)
- ... all my files
- packages (this is the missing directory I manually copied over)
.gitattributes
.gitignore
SitefinityTest.sln
我還認為有一些“構建”步驟,類似於在應用程序在此服務器上運行之前需要在 VS 中點擊“運行”?
再說一遍,這不是我的強項。 我主要是一名前端開發人員,我了解 MVC 和代碼,並且實際上可以構建一個應用程序,但我對幕后發生的事情沒有任何基本的了解。 如果我做出了一些明顯不正確的假設,請告訴我。
我想你可能想嘗試使用Visual Studio內置的“發布”功能。 您應該能夠將它指向您的服務器。 我不記得這個過程中涉及的是什么,但它在過去對我有用。
這篇文章可能有幫助。
https://docs.microsoft.com/en-us/dotnet/core/tutorials/publishing-with-visual-studio
通常DLL文件不會提交給Git - 只提交源代碼。
這就是為什么在你的服務器上很可能Bin文件夾是空的,因此缺少dll錯誤。
你是對的 - 你錯過了這里的“構建”步驟。
如果您在服務器上有可視工作室 - 您可以使用它構建應用程序 - 這將從源代碼生成bin文件夾中的dll。
如果沒有,您可以手動將整個bin文件夾從localhost復制到服務器。
另外,我們不再使用VM了 - 我們使用Azure App Service。 我們將它綁定到github倉庫,當我們將更改推送到repo時 - Azure從github獲取最新信息,構建解決方案並部署該站點。
我非常喜歡這種自動構建選項。
在您的情況下,您將不得不手動執行該步驟 - 在服務器上構建或只是自己復制DLL文件。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.