如何在一个 DNN 清单文件中安装多个软件包?



我正在为 DNN 9.2 编写自定义模块,但无法将压缩文件安装到我的本地 DNN 实例中。 我觉得这是由于解决方案的清单(DNN(文件。 清单包含许多<package>节点,每个节点对应我需要安装的每个模块。 清单的示例如下所示:

<package name="Modoule1" type="Module" version="0.0.2">
  <friendlyName>Module1</friendlyName>
  <description>Display store links like cart/order history/account/help.</description>
  <iconFile></iconFile>
  <owner>
  </owner>
  <license src="License.txt"></license>
  <releaseNotes src="ReleaseNotes.txt"></releaseNotes>
  <azureCompatible>true</azureCompatible>
  <dependencies>
    <dependency type="CoreVersion">09.00.00</dependency>
  </dependencies>
  <components>
    <component type="Script">
      <scripts>
        <basePath>DesktopModulesMyModule</basePath>
        <script type="Install">
          <path>ProvidersDataProvidersSqlDataProvider</path>
          <name>00.00.01.SqlDataProvider</name>
          <version>00.00.01</version>
        </script>
        <script type="UnInstall">
          <path>ProvidersDataProvidersSqlDataProvider</path>
          <name>Uninstall.SqlDataProvider</name>
          <version>00.00.01</version>
        </script>
      </scripts>
    </component>
    <component type="Module">
      <desktopModule>
        <moduleName>Module1</moduleName>
        <folderName>Module1</folderName>
        <businessControllerClass>ModuleSolution.Components.FeatureController</businessControllerClass>
        <supportedFeatures>
          <supportedFeature>IPortable</supportedFeature>
          <supportedFeature>ISearchable</supportedFeature>
          <supportedFeature>IUpgradeable</supportedFeature>
        </supportedFeatures>
        <moduleDefinitions>
          <moduleDefinition>
            <friendlyName>Module1</friendlyName>
            <defaultCacheTime>0</defaultCacheTime>
            <moduleControls>
              <moduleControl>
                <controlKey></controlKey>
                <controlSrc>DesktopModules/MyModule/Module1.ascx</controlSrc>
                <supportsPartialRendering>False</supportsPartialRendering>
                <controlTitle>Module Content</controlTitle>
                <controlType>View</controlType>
                <iconFile />
                <helpUrl />
                <viewOrder>0</viewOrder>
                <supportsPopUps>True</supportsPopUps>
              </moduleControl>
              <moduleControl>
                <controlKey>Module1 Settings</controlKey>
                <controlSrc>DesktopModules/MyModule/Module1Settings.ascx</controlSrc>
                <supportPartialRendering>False</supportPartialRendering>
                <controlTitle>Module1 Settings</controlTitle>
                <controlType>Edit</controlType>
                <iconFile/>
                <helpUrl/>
                <viewOrder>0</viewOrder>
              </moduleControl>
            </moduleControls>
          </moduleDefinition>
        </moduleDefinitions>
      </desktopModule>
      <eventMessage>
        <processorType>DotNetNuke.Entities.Modules.EventMessageProcessor, DotNetNuke</processorType>
        <processorCommand>UpgradeModule</processorCommand>
        <attributes>
          <businessControllerClass>MyModule.Components.FeatureController</businessControllerClass>
          <desktopModuleID>[DESKTOPMODULEID]</desktopModuleID>
          <upgradeVersionsList>00.00.01</upgradeVersionsList>
        </attributes>
      </eventMessage>
    </component>
    <component type="Assembly">
      <assemblies>
        <assembly>
          <name>MyModule.dll</name>
          <path>bin</path>
        </assembly>
        <assembly>
          <name>Library1.dll</name>
          <path>bin</path>
        </assembly>
        <assembly>
          <name>Library2.dll</name>
          <path>bin</path>
        </assembly>
      </assemblies>
    </component> 
    <component type="ResourceFile">
      <resourceFiles>
        <basePath>DesktopModules/MyModule</basePath>
        <resourceFile>
          <name>Resources.zip</name>
        </resourceFile>
      </resourceFiles>
    </component>
  </components>
</package>

DNN 扩展安装程序状态

Zip File Upload Failed:
An unknown error has occured. Please check your installation zip file and try again. 
Common issues with bad installation files:
Zip file size is too large, check your IIS settings for max upload file size.
Missing resources in the zip file.
Invalid files in the package.
File extension is not .zip.
Check that you are logged in.

不会将任何错误写入 DNN 数据库中的事件日志表。 如何修改上述内容以确保清单文件的格式正确?

我对多个包使用以下格式。

<dotnetnuke type="Package" version="5.0">
  <packages>
      <package name="xxx" type="Module" version="01.00.00">
         //rest of nodes
      </package>
      <package name="xxx" type="SkinObject" version="01.00.00">
         //rest of nodes
      </package>      
  </packages>
</dotnetnuke>

如果仍然不起作用,请获取另一个模块的.dnn文件并比较缺少的节点等。

最新更新