簡體   English   中英

有關新項目的建議:現有ASP.NET應用程序的其他功能

[英]Advice on new project: additional functionality into existing ASP.NET app

尋找有關我即將參與的項目的建議,該項目圍繞向在VB.NET中編程的IIS 6.0上運行的現有ASP.NET應用程序中添加某些功能進行。

為了幫助將來的開發,客戶希望附加功能盡可能地成為將來的證明。 理想情況下,我曾說過,我想推動使用ASP.NET MVC3解決方案,該解決方案運行以C#編寫的IIs 7.5和.NET 4。 該解決方案可以作為對當前Web門戶的無縫補充,可能只是一個額外的選項卡式頁面。

但是它們將是完全獨立的Web應用程序。 至關重要。

我可以預見的主要問題是,首先在asp.net Web應用程序和新應用程序之間共享會話詳細信息。 特別是關於維護會話狀態(並且不讓IIS在其中一個應用程序上超時)。 另外,將兩個“應用程序”結合在一起在我的腦海中似乎有問題,盡管這可能比我擔心的要簡單得多。

如果有人有任何想法請告訴我有關這兩個問題的建議!

到目前為止,我想出了以下解決方案,無論它們是否可怕:

1)將新功能嵌入到現有代碼庫中(不是一個很好的選擇)。 這將意味着失去任何潛在的未來升級能力,也意味着將無法利用MVC框架遵循更好的OO約定。

2)使用iFrame鏈接到單獨的MVC3應用程序的剃須刀頁面(我目前最喜歡的一個)。 允許使用所有新技術,但是缺點是共享會話數據。 通過將iFrame的會話狀態持久化到db,“通過屬性”(這可能嗎?) (慢?)還是應用程序之間的某種Web服務交互來推/拉用戶/會話數據?

任何建議/建議,不勝感激!

我同意您的觀點,C#和MVC是“前進的道路”,但是不幸的是,將兩個應用程序混合在一起會給您帶來很多麻煩,尤其是不同的會話ID。 您可能必須要有一個共享的數據庫表才能將它們映射在一起,並且您可能已經想象到了這種“創可貼”的外觀。

在C#中重建現有內容有什么影響? 也許您可以建議完全升級。 客戶自己似乎贊揚了面向未來的優點,因此這就是要走的路。 不,我不會提倡使用“代碼轉換器”,但實際上並不應該那么困難。

我想,接下來要考慮的是“面向未來”。 客戶是否擔心VB.NET很快就會消失或將來無法處理任何事情? 老實說,我發現這種情況不太可能發生。

我想我花了點時間,但是本質上將兩個應用程序結合在一起,一個帶有舊功能,另一個帶有新功能會令人頭疼。 可以通過將舊站點遷移到C#/ MVC,然后添加其他功能來解決。 沒錯,今天看來這似乎是一項巨大的承諾-但在未來的發展中,它將帶來紅利。

如果當前站點可以升級到.NET 4.0,則沒有理由不擴展現有應用程序。

沒有什么可以阻止您混合使用MVC和Web表單的(實際上有幾篇文章介紹了如何做到這一點)。 沒有什么能阻止您混合使用VB.NET和C#(或者據我所知,也可以阻止您在VB.NET中進行MVC)。

您必須非常努力才能說服我使用iFrame的優點。 很難。 您也許可以說服我並排運行兩個應用程序的優點-通過文件夾拆分功能-但老實說,我會更樂於升級現有站點,然后從那里進行構建。

暫無
暫無

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

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