Dynamics 365-關於Solution的那些事(一) Dynamics CRM 2015-超大Solution導入問題

  關於CRM Solution,我準備寫兩到三篇的博客來作下介紹:包括一些基本信息,超大solution,還有增量更新solution操做等。html

  CRM中的component,都是放在一個名叫Solution的容器中的,即便是剛剛新建的CRM Organization,也會有一個名叫Default Solution的容器。那麼Solution這個容器呢,一方面是爲了隔絕component間的衝突和影響;另外一方面就是爲了便於維護和管理。不少時候,工做中面對的CRM環境不單單隻有一套,可能有生產環境,Sandbox環境等。這個時候,咱們就會涉及Component在不一樣CRM環境之間的導出導入。也許你會疑惑,爲何再也不各個環境裏都新建一套呢?post

  這是由於,新建的Component每每都有本身的惟一標識,而在不一樣環境裏新建的Component,惟一標識能夠認爲確定是不同的。這個若是不注意,就會致使一系列的問題,包括定製很差用,字段值不匹配等等。因此,咱們就須要使用Solution,來實現Component的同步操做。一個Solution是一個zip包,包裏的結構,依賴於放入其中的Component,基本是固定的,來看個例子:url

  

  這個就是zip包裏的內容了。WebResouces文件夾裏放着WebResource components,ContentType.xml文件裏是MIME type信息,customizations.xml是具體的component描述信息,包括Entity,Attributes,form,relationship,global optionset等,solution.xml則至關因而對solution裏有哪些component的一個聲明。component

  在CRM導出Solution的時候,能夠導出Unmanaged Solution,以及Managed Solution。Unmanaged Solution,主要是開發過程當中使用,若是在CRM環境刪除Unmanaged Solution,solution裏的component依然在環境中存在;Managed Solution,是在生產環境中使用,由於Managed Solution,不能夠再導出,這樣就避免了定製被惡意修改的問題,而在CRM環境刪除Managed Solution,Solution裏的Component也會隨之刪除。另一點須要注意的是,Solution是增量的,也就是說,好比你先導入一個Entity,裏面有字段A,再導入這個Entity的時候,字段A在solution中去掉了,可是這個修改後Solution的導入,不會影響環境中字段A的存在。orm

  對於Online環境,CRM支持的最大solution大約是30MB,而OnPremise環境,CRM支持的最大Solution是6MB。固然,對於OnPremise而言,這個Solution的大小是能夠修改的,這裏咱們就不得不說超大Solution的問題了。xml

  Solution有兩種形式上的過大,一種是zip過大,而另外一種是zip包裏的內容過大,而這兩種狀況的表現也不同。zip包過大,每每致使的是導入超時;而zip包裏的內容過大,則是在CRM Solution界面點擊Import,而後Browse選擇Solution,點擊Next,而後......就沒有而後了,界面會一直loading。htm

  詳細的解決方案能夠參考我以前的博客:Dynamics CRM 2015-超大Solution導入問題blog

  而下一篇呢,則準備依據Solution增量的特色,來進一步處理咱們的Solution信息。ip

相關文章
相關標籤/搜索