2011-06-08 174 views
9

目前我對CRM尚未確定。這對於商業用戶來說是一個很好的工具,但是到目前爲止對於開發來說它有點違背穀物。我需要解決的下一個問題是如何輕鬆地在表單中使用JavaScript控件。我們使用TFS進行源代碼管理。MS Dynamics CRM的源代碼管理

任何人都有經驗或有任何想法如何做到這一點?

明顯的選擇是將JS複製並粘貼到源代碼控制中,但這也是後面的一個明顯的問題。

回答

15

一對夫婦的事情,我們在我們的項目做:

  1. 我們使用網絡資源利用包含在CRM SDK(實際上是一個修改版吧)部署JavaScript的網絡資源,以一個特定的解決方案。將腳本文件保存在源代碼控制中非常簡單,避免複製和粘貼。
  2. 我們編寫了一個我們在本地部署中使用的自定義HTTP模塊。它攔截JavaScript庫的請求並將它們重定向到本地磁盤上的某個位置。這樣,我們不必在測試時實際重新部署Web資源,只需將JavaScript文件重新部署到磁盤即可。 (請注意,這在生產環境中將不受支持,我們只是在開發環境中執行此操作以減輕JavaScript部署的痛苦)。
+0

這聽起來像是一個很好的部署解決方案。 – cchamberlain 2011-06-08 06:26:20

0

客戶關係管理2011中的任何網絡資源是一個痛苦的管理。我們最終只是在TFS 2010中進行了大量的粘貼操作(實際上導致了一些可憐的粘貼問題)。

目前開箱即用,並不是一個簡單的方法來做到這一點。

1
  1. 只擔心這個,如果你真的需要回到舊版本的網絡資源的能力。我發現我經常不必這樣做。請記住,Web資源存儲在SQL Server中,就像將它們放入TFS一樣,只要您的CRM數據庫正在備份,就不會丟失Web資源。在傳統開發中,將源代碼保存在TFS中非常重要,因爲一旦編譯和發佈,您就不會輕易回覆它。通過CRM開發,您的網絡資源大部分是HTML或JavaScript,因此您始終可以獲得源代碼。

  2. 如果你真的需要版本控制,爲什麼不建立一個快速的小控制檯應用程序,每天晚上下載所有的自定義項並將該zip文件存儲在TFS中?誠然,要獲得舊版本並不那麼容易,但是通過不必手動保持TFS同步,您應該可以獲得很高的生產力。這也有利於將所有定製存儲在TFS中,而不僅僅是Web資源。

  3. Silverlight是這裏明顯的例外 - 我肯定會將Silverlight網頁資源源代碼存儲在TFS中,因爲它是一個「編譯」的網頁資源。您已經在Visual Studio中,因此無論如何TFS都是非常合適的。

希望幫助!

1

我們嘗試鏡像Dynamics用於基本庫項目中Web資源的文件結構。所以版本控制正常工作,我們只是不使用項目的輸出。

您也可以嘗試使用新的「CRM解決方案」項目模板(從SDK安裝),並且能夠從項目的上下文菜單進行部署。

我對模板有一些問題,但需要檢查一下。

希望這會有所幫助。

1

你可以在我自己的問題here上看看我的回答。

MS Dynamics CRM 2011 SDK有solutionpackager.exe實用程序可以將所有CRM資源拆分爲文件樹,並且可以將它們存儲在gittfs中。