2012-08-14 50 views
1

(部署)的Web應用程序,我想創造一個門戶網站向用戶提供基本的功能,用戶授權,統計等,但在一個較低的水平,提供各種功能的應用程序。使用.dll文件的預編譯網站

通過研究和大量的Google我認爲最好的方法是爲Web門戶製作一個網頁項目,並且爲了方便源代碼控制,低耦合性和可維護性,要求所有下面的應用程序都是可部署的依賴項的門戶網站。從而!他們都在發佈網站時自動編譯和上傳!這似乎很棒!但是我不能在我的生活中弄清楚如何從.dll(可部署的程序集)調用底層網頁。

這甚至可能嗎?這似乎是從我能收集到的,因爲你可以編譯整個網站(aspx和所有)到.dll。那麼如何去調用.dll中的網頁/應用程序呢?

例如,我希望能做這樣的事情: www.webpage.com/Default.aspx(root and web portal) www.webpage.com/bin/application.dll/Default.aspx(the預編譯的web應用程序無路由)

謝謝!

編輯: 我想澄清的是,這個想法是,一個開發組可以維護Web門戶,其他人可以構建單獨的獨立應用程序,將在門戶下面運行。在編譯時需要包含單獨的項目。也許這個功能是不可能的? 舊樣式的網站項目的目的是因爲此項目已在某個時間以前開始,並且是該項目的資源。如果項目類型引入了限制,將其更改爲較新的項目類型(ASP Web應用程序)是可行的,當且僅當它實現我如上所述的希望。

我在想這是有點黑客攻擊,但我可以添加一個控制器到.dll只是提供實用程序返回一個完整的aspx或ascx web ui組件按需發送到客戶端。必須有更好的方法呢?

+0

「ASP.NET網站」,在VS2005中引入,但都沒有太大的談話thesedays的問題;似乎我們都使用了VS2002中引入的原始「ASP.NET應用程序」項目模型。但是,您的問題文本暗示您對ASP.NET的工作原理缺乏瞭解。無論如何,我建議你使用ASP.NET MVC而不是WebForms。 – Dai 2012-08-14 23:53:21

+0

Web窗體仍然是構建網頁的有效用法。根據設計的優缺點,我使用網頁表單進行了項目。我喜歡MVC並考慮過它。花費時間將我的項目切換到MVC如果它是實現問題中描述的功能的唯一方法。 – Nemph 2012-08-15 15:27:04

回答

0

我會建議如下...

1解決方案與2個項目。 - 一個網站(不是web應用程序) - 一個類庫

類庫(最終編譯成一個DLL)將成爲您的網站的項目引用,它將處理大量的代碼。該網站將具有用戶界面和一些基本邏輯,當然將決定網站的結構,但將依賴於類庫來進行繁重的工作。

這種設置的優點是集中代碼和易擴展性。我的一個解決方案有3個網站和一個共享相同代碼庫的Web服務。

+0

這樣做可行,但改變了我設計的意圖,允許在網站項目(網絡門戶)下創建單獨的應用程序,只需將其添加到門戶網站即可添加對網站項目的引用。是否不可能實現從.dll傳遞的網站UI?或者.dll只能有實用程序功能?這讓我感到困惑,因爲MSDN文檔暗示編譯整個Web應用程序(.aspx,ascx和全部)到.dll中。 – Nemph 2012-08-15 15:33:30

+0

我對web應用程序的使用經驗是*邏輯*被編譯成一個DLL,但UI仍然是獨立的.aspx文件。 您可以在代碼中構建用戶界面,但這將是一項重大任務,取決於您的網站的交互方式,您可能會遇到回發問題(通過代碼添加的控件必須在每次回發時重新添加 - 可能會導致重大頭痛表格提交)。 您可能*作弊*一點,並使用URL路由和路由控制器(缺乏更好的術語)將所有URL移動到單個處理位置。不知道這是否有道理。 – CoderMarkus 2012-08-15 17:35:04

+0

我認爲現在的.Net框架不支持我想要做的很好。雖然它可能是可行的,但它也可能變得非常痛苦!我認爲TrueDevelopment在這裏有最好的答案。 – Nemph 2012-08-20 17:00:01