Web 資源是儲存在 Dynamics 365 Customer Engagement (on-premises) 資料庫中的虛擬檔案,可以使用唯一的 URL 位址來擷取。
Web 資源的功能
Web 資源代表可用來擴充 Dynamics 365 Customer Engagement (on-premises) Web 應用程式的檔案,例如 html 檔案、JavaScript 和 CSS 以及數種影像格式。 您可以在表單自訂、SiteMap 或應用程式功能區中使用 Web 資源,因為這些資源可以使用 URL 語法來參考。
Web 資源的 URL 語法允許相對路徑參考。 您可以透過開發工具,使用與 Web 資源相容的檔案類型,在開發伺服器上建立相互依存的檔案群組。 然後,如果您使用一致的命名慣例和相對路徑參考,則網站會在您將所有檔案上傳至 Dynamics 365 Customer Engagement (on-premises) 之後運作。
由於 Web 資源儲存在 Dynamics 365 Customer Engagement (on-premises) 中,並且是解決方案元件,因此可以輕鬆地將其匯出並安裝至 Dynamics 365 Customer Engagement (on-premises) 的內部部署或 Dynamics 365 for Customer Engagement。 Dynamics 365 for Microsoft Office Outlook 的使用者也可以在離線時使用離線存取的 Web 資源,因為這些資料會與使用者的資料同步處理。
您可以使用表單編輯器,將已啟用表單的 Web 資源新增至實體表單並進行設定。
由於 Web 資源儲存為資料庫中的記錄,因此可以使用標準技術來建立、擷取和更新記錄,以程式設計方式進行管理。 文字型 Web 資源 (JScript、CSS、XML、XSL、RESX 和 HTML) 可以編輯和儲存在應用程式中。
Web 資源的限制
沒有任何類型的 Web 資源支援 ASP.NET (.aspx) 頁面在伺服器上執行程式碼的功能。 Web 資源僅限於靜態檔案或瀏覽器中處理的檔案。 Web 資源可包含瀏覽器中處理的程式碼來執行 Web 服務呼叫,以便與 Dynamics 365 Customer Engagement (on-premises) 資料互動。 如需詳細資訊,請參閱使用 Web 資源處理 Customer Engagement 資料。
Web 資源只能使用 Dynamics 365 Customer Engagement (on-premises) Web 應用程式安全性內容來取得。 只有具有必要權限的授權 Dynamics 365 Customer Engagement (on-premises) 使用者才能存取這些使用者。
大小限制
可上傳的檔案大小上限是由 Organization.MaxUploadFileSize 屬性所決定。 此屬性是在 Dynamics 365 應用程式中系統設定的電子郵件索引標籤上進行設定。 此設定限制可附加至電子郵件訊息、附註和 Web 資源的檔案大小。 預設設定是 5 MB。
Web 資源類型
您可以使用十種檔案格式來建立 Web 資源。 下表列出每種檔案格式、允許的副檔名,以及您用於每個格式的類型值。
| 檔案 | 副檔名 | 類型 |
|---|---|---|
| 網頁 (HTML) | .htm、.html | 1 |
| 樣式表單 (CSS) | .css | 2 |
| 指令碼 (JScript) | .js | 3 |
| 資料 (XML) | .xml | 4 |
| 影像 (PNG) | .png | 5 |
| 影像 (JPG) | .jpg | 6 |
| 影像 (GIF) | .gif | 7 |
| Silverlight (XAP) | .xap | 8 |
| StyleSheet (XSL) | .xsl、.xslt | 9 |
| 影像 (ICO) | .ico | 10 |
| 向量格式 (SVG) | .svg | 11 |
| 字串 (RESX) | .resx | 12 |
參考 Web 資源
您可以使用數種方法來參考 Web 資源。
備註
- 盡可能使用
$webresource指示詞。 只有在網站地圖或功能區命令中使用$webresource指示詞的參考才會建立相依性。 Web 資源相互參考時,不會建立相依性。- 若要在實體表單或圖表外部顯示 Silverlight Web 資源,請建立 HTML Web 資源以做為 Silverlight Web 資源的主機頁面。 然後使用 $webresource: 指示詞來開啟 HTML Web 資源。
$webresource 指示詞
從功能區控制項或 $webresource 子區域參考 Web 資源時,您應該一律使用SiteMap 指示詞。 在 XML 允許 URL 值的任何位置使用 $webresource 指示詞。 下列範例示範其使用方式。
$webresource:<name of Web Resource>
備註
使用 $webresource 指示詞時,Dynamics 365 Customer Engagement (on-premises) 會建立或更新解決方案相依性。
Xrm.Navigation.openWebResource
Xrm.Navigation.openWebResource 函式會在新視窗中開啟 HTML Web 資源,其中包含傳遞 Web 資源名稱的參數、要在資料參數中傳遞的任何查詢字串資料,以及視窗高度和寬度的相關資訊。
產生的 URL 包含唯一 GUID 權杖,以便載入快取的 Web 資源。
相對 URL
從不支援使用 $webresource: 指示詞的區域參考 Web 資源時,可以使用相對 URL。 若要啟用此功能,建議您對反映虛擬檔案結構的 Web 資源使用一致的命名慣例。 解決方案發行者自訂首碼一律會加入做為 Web 資源名稱的字首。 這可以表示該發行者所新增之所有 Web 資源的虛擬「根」資料夾。 然後,您可以使用正斜線字元 (/) 來模擬 Web 伺服器接受的資料夾結構。
從其他 Web 資源中,您應該一律使用相對 URL 來相互參考。 例如,對於要參考 CSS Web 資源 new_/Styles/styles.css 的網頁 Web 資源 new_/content/contentpage.htm,請建立連結,如下所示:
<link rel="stylesheet" type="text/css" href="../styles/styles.css" />
對於要開啟網頁 Web 資源 isv_/foldername/dialogpage.htm 的網頁 Web 資源 new_/content/contentpage.htm,請建立連結,如下所示:
<a href="../../isv_/foldername/dialogpage.htm">Dialog Page</a>
備註
不要使用 WebResources 資料夾做為 URL 根路徑的相對 URL。 例如,不要使用以下內容:/WebResources/<name of web resource>。 使用者屬於伺服器上的多個組織時,此路徑一律會參考使用者預設組織。 如果使用者使用的不是其預設組織,且預期的 Web 資源未包含在使用者的預設組織中,則即使 Web 資源確實出現在使用者目前工作的組織中,仍會發生「找不到檔案」錯誤。
完整 URL
下列範例顯示可用來檢視 Web 資源的 URL 樣式。
<Microsoft CRM URL>/WebResources/<name of web resource>
應用程式會處理此 URL,並傳回包含最新版本 Web 資源的檔案。 此 URL 看起來像這樣:
<Microsoft CRM URL>/%7B<version value>%7D/WebResources/<name of web resource>
版本值會在發佈自訂時更新,確保瀏覽器使用最新快取版本的 Web 資源。 因此,請使用 Web 資源的相對路徑、Xrm.Navigation.openWebResource 函式或 $webresource 指示詞 (如果可能),因為會自動包含版本值。 對於大型 Web 資源,如果您不使用檔案的快取版本,可能會對效能產生重大影響。
下列範例顯示 Dynamics 365 for Customer Engagement 的 URL,其中 MyOrganization 是組織的名稱,而 new_/test/test.htm 是 Web 資源的名稱:
https://MyOrganization.crm.dynamics.com/WebResources/new_/test/test.htm
備註
在 Web 資源名稱中包含 '/' 字元和副檔名是可選擇的最佳做法。
下列範例顯示內部部署 Dynamics 365 Customer Engagement (on-premises) 的 URL,其中 myServer 是伺服器名稱:
https://myServer/MyOrganization/WebResources/new_/test/test.htm
撰寫程式碼來參考需要適用於 Dynamics 365 for Customer Engagement 或內部部署 Dynamics 365 Customer Engagement (on-premises) 的 Web 資源時,您應該使用 getClientUrl 函式。
社群工具
以下是一些與 Web 資源搭配使用的社群工具。
| 工具名稱 | 詳細資訊 |
|---|---|
| WebResourceManager | https://github.com/gotdibbs/WebResourceManager |
| XrmToolkit | https://xrmtoolkit.com/Home/Features |
| WebResources Manager | https://www.xrmtoolbox.com/plugins/MsCrmTools.WebResourcesManager/ |
備註
社群工具不是 Microsoft Dynamics 和 Microsoft 的產品,無法提供支援給社群工具。 如果您有與工具相關的疑問,請連絡工具的發行者。
另請參閱
撰寫 Dynamics 365 Customer Engagement 的用戶端應用程式延伸模組
建立可存取的 Web 資源
網頁 (HTML) Web 資源
Silverlight (XAP) Web 資源
指令碼 (JScript) Web 資源
影像 Web 資源
樣式表 (XSL) Web 資源
資料 (XML) Web 資源
樣式表 (CSS) Web 資源
Web 資源訊息和方法
範例:透過資料參數將多個值傳遞至 Web 資源
範例:將檔案匯入為 Web 資源
在 Web 資源中使用 Web 服務資料
使用 Fiddler AutoResponder 進行 Streamline Web 資源開發