我正在爲將連接到Microsoft Dynamics的客戶開發一個Web門戶。我不想讓Dynamics CRM直接面向面向Internet的部署(IFD),所以我想使用一個單獨的數據庫,使Web界面與之互動,然後使用Web服務在Web門戶數據庫和Dynamics之間移動數據CRM。 我只是在想這是否是繼續進行的最佳方式,以及是否有任何好的代碼示例等,我可以看看實現它的想法? 我看到微軟有一個客戶門戶網站,但它看起來需要(粗略一瞥)一個IFD部署 - 這是我不想要的。爲Microsoft Dynamics CRM編程Web Portal
3
A
回答
6
首先,創建ASP.NET項目(或WebForms的MVC 3)後,添加下列引用:
- Microsoft.crm.sdk.proxy。
- Microsoft.xrm.sdk。
- System.Runtime。序列化。
- System.ServiceModel。
在你的後臺代碼創建一個類,然後添加以下代碼:
private IOrganizationService GetCrmService(string userName, string password, string domain, Uri serviceUri)
{
OrganizationServiceProxy _serviceProxy;
ClientCredentials credentials = new ClientCredentials();
credentials.Windows.ClientCredential = new System.Net.NetworkCredential(userName, password, domain);
//credentials.UserName.UserName = userName; // uncomment in case you want to impersonate
//credentials.UserName.Password = password;
ClientCredentials deviceCredentials = new ClientCredentials();
using (_serviceProxy = new OrganizationServiceProxy(serviceUri,
null,
credentials,
deviceCredentials))
{
_serviceProxy.ServiceConfiguration.CurrentServiceEndpoint.Behaviors.Add(new ProxyTypesBehavior());
return (IOrganizationService)_serviceProxy;
}
}
如果要檢索多個記錄:
string fetch = @"My Fetch goes here";
EntityCollection records = getCrmService().RetrieveMultiple(new FetchExpression(fetch));
我強烈建議下載SDK或檢查this 你會發現許多樣本和演練,這將幫助你建立良好的門戶網站。
1
我覺得這是一個很好的策略,因爲:
- 它可以讓你以異步方式把網站到CRM上的數據輸入。這種解耦確保了CRM和網站都不會成爲彼此的瓶頸。
- 只有中間服務層是面向互聯網的,所以如果這個服務層受到威脅,您將可以控制哪些CRM信息會被披露/打開以進行修改。
你以後的建築讓人想起的CRM異步服務的工作方式(異步插件和工作流程,以這種方式工作):
- 作業被放在一個隊列(表) CRM DB。
- 計劃服務每x秒喚醒一次並從隊列表中提取最新的y個記錄。
- 該服務執行每個作業並將結果(成功,錯誤消息日誌)寫回隊列表的記錄。
因此,可能最難的事情是編寫一個不會拋出異常(但總是消化它)並將結果正確記錄回數據庫的良好定期服務。
要了解更多有關Dynamics CRM中的「異步服務架構」,指的是以下幾點:http://msdn.microsoft.com/en-us/library/gg334554.aspx
1
- 它看起來像一個不錯的辦法。
- 它將改善門戶和CRM的性能。
- 門戶網站顯示的數據幾乎是實時的。即它不是實時的。
- 在整個開發過程中,您最好始終檢查是否沒有太多異步處理來保持CRM服務器始終忙碌。
- 我不認爲,加速器/門戶需要CRM是一個IFD實例,我猜想只有門戶部分需要被Internate面對(當然,使其可用於此目的!)
- Anwar is對於這樣的研究來說,SDK是一個很好的工具。
0
客戶門戶不需要IFD部署。如果您不喜歡客戶門戶網站,則始終可以使用SDK Extension中包含的SDK Extension for Portal開發(microsoft.xrm.client.dll & microsoft.xrm.portal.dll和portalbase解決方案)。
關於如何使用SDK Portal Extenstion構建門戶網站有一個很好的資源。
相關問題
- 1. Microsoft Dynamics CRM API
- 2. Microsoft Dynamics CRM網站
- 3. 使用Web服務的Microsoft Dynamics CRM
- 4. Microsoft Dynamics CRM OAuth集成
- 5. Microsoft Dynamics CRM集成SharePoint
- 6. System.Security.SecurityException在Microsoft Dynamics CRM 2013
- 7. 的Objective-C&與Microsoft Dynamics CRM
- 8. Microsoft Dynamics Crm 4.0中的Partylist
- 9. Microsoft Dynamics CRM和PHP/JSON
- 10. Microsoft Dynamics CRM Online註冊新程序集
- 11. Microsoft Dynamics - Web API
- 12. 爲Microsoft Dynamics CRM創建添加項目
- 13. 爲Microsoft Dynamics CRM創建插件2013
- 14. 上傳網絡資源到Microsoft Dynamics CRM編程與Node.js的
- 15. Web應用程序將被集成到Microsoft動態CRM CRM
- 16. 的Microsoft Dynamics CRM - 通行證從Web服務到IPlugins
- 17. Microsoft Dynamics CRM 2011使用什麼Web框架?
- 18. Microsoft Dynamics CRM 2016 Web API放置請求清除值
- 19. BizTalk CRM Dynamics 4到Dynamics 2011
- 20. 檢索廣告系列Microsoft Dynamics CRM 3.0
- 21. Android Microsoft Dynamics CRM adal4j登錄問題
- 22. 附件的Microsoft Dynamics CRM存儲選項
- 23. Microsoft Dynamics CRM - 密碼哈希算法
- 24. Microsoft Dynamics CRM 2011 - 創建插件屏幕
- 25. log4net與Microsoft Dynamics CRM 3.0標註
- 26. Microsoft Dynamics CRM 2011動態站點地圖
- 27. Microsoft Dynamics CRM 2013與TFS 2013的集成
- 28. 在FormXml中缺少NavBarItems - Microsoft Dynamics CRM
- 29. 您對Microsoft Dynamics CRM的體驗如何?
- 30. 從Python連接到Microsoft Dynamics CRM 2011 SDK