簡體   English   中英

顛覆並使用IIS進行ASP.NET開發

[英]Subversion and using IIS for ASP.NET development

我是SVN的新手,但無法找到以下情況的答案。

我有一個正在開發的ASP .NET 2.0 Web應用程序。 我使用本地IIS作為開發Web服務器(即不是Visual Studio Web開發服務器)。 我的開發環境是VS2005,Vista,IIS7,TortoiseSVN / AnkhSVN。 VisualSVN已安裝在服務器上。

我的.sln文件和類庫等位於** C:\\ Localsource \\ Projects \\ ProjectName **文件夾中,而我的.aspx文件位於** C:\\ inetpub \\ wwwroot \\ ProjectName **文件夾中。

我可以將存儲庫設置為** C:\\ Localsource \\ Projects \\ ProjectName **,但無法想到在同一存儲庫中為IIS文件夾進行設置的方法。

在SVN中處理此開發環境的最佳方法是什么?

非常感謝,

螞蟻

在Visual Studio的解決方案中,您可以有一個類庫項目,該項目通常位於.sln文件下的目錄中。

在這種情況下,他在解決方案中也有一個Web項目,但不在文件目錄結構中的.sln文件下方。

他將通過HTTP而不是本地文件路徑附加到該項目。

IIS將其作為http:// localhost / webapp進行管理,默認情況下會將其放置在c:\\ inetpub \\ wwwroot \\ webapp中。 webapp文件夾中的文件將不在存儲庫中,因為它們會出現在解決方案和類庫的層次結構中。 這是他的問題如何解決。

我的答案是將http:// localhost / webapp移到.sln文件下方並與類庫目錄相鄰的文件夾,然后將其全部放入存儲庫中。

最好將類庫和Web應用程序分開,以幫助代碼重用和將邏輯與網站分離。

您不僅可以將IIS指向C:\\ Localsource \\ Projects \\ ProjectName並設置權限嗎?

嗯-好點。 當我到達這里時就這樣進行設置,Visual Studio總是在wwwroot文件夾中創建網站,因此我認為wwwroot正是他們所要去的地方。

也許我不得不考慮做一些重新整理...

謝謝!

好的,我在這里可能很愚蠢,但是..為什么需要將IIS文件夾(即代碼庫的輸出)添加到存儲庫中?

更新資料

我想我還要澄清一下。.我的意思是說我不確定ASPX是否與項目分開嗎? 添加到存儲庫中的Web項目和“解決方案”中的n個類庫項目有什么問題。然后,您在每個新發行版上進行發布。

如果僅是“ 可能更容易回滾已發布的輸出 ”的情況,那么就這樣,我很好奇,因為我沒有看到很多人實際那樣工作。

在這種結構中部署解決方案也將容易得多。

IIS文件夾不是代碼庫的輸出,它是應用程序的一部分。 它不是CGI輸出或其他任何東西,實際上是運行該應用程序的腳本!

這是.aspx頁面,將具有用戶控件和HTML以實際運行該應用程序。 它是應用程序的一部分,但與VS Studio解決方案分開。

最簡單的方法是先找到一個解決方案,然后是C:\\ Localsource \\ Projects \\ ProjectName \\ WEBSITE。

將IIS也指向該文件夾。

我認為您可能希望按照Dillorscroft的建議將其分為兩個問題。

首先,關於發布到生產站點上的開發服務器上的資料,我認為您需要對此進行版本控制。 首先,您可以回滾任何頁面,還可以決定何時將穩定水平的開發站點提取到生產環境中。 (我將從源代碼控制系統中將其轉換為站點映像,然后將該映像與生產站點同步。)

因此,在第一部分中,我們討論的是對網頁進行版本控制以及支持該網站的所有自定義服務器端材料。

其次,關於在站點上使用的組件的開發,他們需要自己的開發項目,因為構建組件的結果是到達開發站點的,而不是所有的源代碼,庫等用。 因此,它們將具有自己的項目開發樹(可以將其視為要構建供其他開發項目使用的庫,盡管在這種情況下,其他項目是網頁)。 因此,唯一應在IIS中顯示的是開發站點的“已部署”組件。

您似乎有三個關鍵問題:

  1. 如何處理需要針對網站的測試的開發以及版本控制的位置(假設它們不屬於網站本身)

  2. 您可以多么容易地確保將開發網站上的所有內容保持在版本控制之下並適當地檢入和檢出。 (這與您用來編輯網頁和其他服務器端工具的工具有關,而不是開發到一邊的組件。)

  3. 輕松地將開發的組件從生產它們的項目中提取到開發站點,並在那里進行檢入。

解決方案(2)和開發網站的版本控制,我的解決方案是將Visual Source Safe與IIS和FrontPage擴展結合使用,從而使網站受版本控制。 由其他開發項目產生的組件通過VSS共享映射到服務器項目。

對於SVN,我推測(1)您想查看IIS是否將SVN適配器識別為外部源控制系統,並且,無論哪種方式(2)都有一個從其建築項目中交付組件的准則進入整個網站項目。

搶,

為什么將.aspx文件視為代碼庫的輸出?

它是代碼庫的一部分。 例如,它不是編譯后的輸出。

只是想知道?

暫無
暫無

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

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