2011-08-18 46 views
0

我很快就要建立一個網站,我從來沒有這樣做過。我有編碼原生應用程序的經驗,但不是web應用程序Asp.net vs任何網絡服務?

我在想,我的網站(非常簡單的網站),將只使用jQuery問一個Web服務,它需要的數據。我打算用ASP.Net做服務器端,但後來我想:「爲什麼?」

現在,我敢肯定是有原因的使用Asp.Net,但我不能想到一個。我的全部目的是在客戶端顯示一些數據。我能不能用jQuery和Web服務調用來做到這一點?

記住我與ASP.Net沒有經驗

感謝

+0

可以使用ASP.NET託管的Web服務。顯然還有很多其他技術可以承載Web服務。 – Paparazzi

+0

是的,但爲什麼我會選擇ASP.Net? – Jason

回答

2

是的,你可能擁有一個服務器上的純HTML文件,使用戶使用像JSON或XML作爲jQuery的請求的Web服務您中。

雖然使用了一堆意大利麪條的在你的代碼$.ajax(options)調用可能成爲累贅。我並不沉迷於前端開發,因此我嘗試通過使用較重的後端ASP.NET或ASP.NET MVC應用程序來限制我的應用程序所需的這些調用的數量。但是,您始終可以進入JavaScript原型並創建自己的前端庫來處理業務/視圖對象。

您的服務可以實現爲ASMX Web服務或使用WCF。後者可以自行託管,託管在Windows服務中(聽起來您可能已經熟悉了),甚至可以在IIS中使用。 WCF爲您定義端點提供了更多的靈活性。這只是意味着你可以編寫一次代碼,並且可能編寫輕量級過濾器來修改請求端點的數據。例如。一個網站可能需要表格格式的數據(數組的JSON數組),而一些未來的服務可能只需要列出數據。

當然,你不僅限於jQuery。假設你有一個有組織的後端,那裏有許多完全具備處理前端的JavaScript庫/框架。僅舉幾例,Backbone.js的,spine.js,KnockoutJS(重前端應用程序)

+0

感謝您的回答,後續跟進:我可以像在任何Windows服務應用程序中一樣實現我的wcf服務,爲什麼我會使用asp.net託管它? – Jason

+0

@Jason如果您在IIS(作爲Web應用程序)中託管它,您將獲得IIS *的所有優勢,例如進程回收,空閒關閉,進程運行狀況監視和基於消息的激活。*這些選項僅從http ://msdn.microsoft.com/en-us/library/ms733766.aspx –

0

我不會用jQuery的要求在您的應用程序的一切。除了其他原因之外,還有一些情況下回傳對於性能是可取的。在客戶端做所有事情不是一個好主意,因爲它會增加不必要的限制。有時候,在後臺代碼中處理服務器端的東西顯然更容易。你只需要保持適當的平衡。

如果您的應用程序很簡單,我也沒有看到任何合併Web服務的理由。如果你正在構建一個企業級的應用程序,那麼它是有道理的,但對於像你所描述的那樣簡單的事情來說,這將是一個重大的矯枉過正。

經驗法則是:設計您的需求,不要讓你的架構複雜得多,它需要的。

1

除非報告是出奇的簡單和小(無需分頁),你仍然想一箇中間層。

就個人而言,如果你有機會到asp.net的MVC,我會走這條路。我的jQuery的粉絲也,所以我仍然會用它來呈現網格:

http://www.trirand.com/blog/?page_id=5

+0

謝謝我喜歡你鏈接到的jQuery網格 – Jason