2012-10-12 23 views
2

我已經做了一個證明,我可以在ASP.NET MVC應用程序中包含Node.JS。 假設我要使用外部會話提供程序,如Windows Server應用程序緩存或memcache。當一個人擁有ASP.NET MVC 4 + Node.JS混合應用程序時的會話

我有一個應用程序,其中有一個非常複雜的程序集,我們用它來構建中間層對象,然後存儲在會話中。程序集和它生成的對象是我們最有價值的部分,我不能證明將這個C#項目重寫成更適合Node.JS的東西。

此數據存儲在外部緩存中,現在node.JS開發人員需要訪問該數據。 你們在這種情況下使用了什麼技術?我非常肯定,我將不得不擁有某種由asp.net提供的服務接口,因爲它是擁有這個記錄系統的服務接口。

我也在尋找新項目的綠色字段選項,它允許ASP.NET MVC和Node.Js以混合方式很好地協同工作,所以也許這可以通過存儲在公約中的數據來解決適用於兩者。

謝謝。

回答

0

我根本不會使用ASP.NET會話。也許一個數據庫將是一個更可互操作的方法。 SQL Server甚至NoSQL解決方案如RavenDB可能是一個不錯的選擇。

ASP.NET進程外狀態提供程序的問題在於它們使用非互操作串行器(例如BinaryFormatterNetDataContractSerializer),因此無法從NodeJs讀取數據。即使在不同版本的框架上運行2個ASP.NET應用程序,在不同版本的.NET框架之間的序列化機制中甚至可能存在差異,但共享會話數據可能是一個挑戰。

+0

關於NoSQL的好東西。我剛纔看了一眼MondoDB APS.NET Session提供程序。我一直想知道存儲會話信息的存儲器可能看起來像NoSql db。也許Mongo或Raven已經提供了這個選項。這絕對是一個綠色領域的選擇。 –

+0

我處於類似的情況,因爲我有一個混合應用程序,我想無縫地輕鬆共享.NET和Node之間的會話數據。任何關於你已經使用的解決方案的更新以及它的工作原理? http://stackoverflow.com/questions/29435350/access-to-asp-web-session-from-node-js-code-deployed-with-iisnode – fogwolf

相關問題