DNN清单模式

  • 平台
  • Evoq内容
  • Evoq参与

这款清单是一个XML文件(例如,MyDNNExtension.dnn),指示在安装过程中必须如何处理扩展包中的特定文件。

只有清单中特别声明的文件才会被安装。中指定的任何zip文件中的文件组件类型= " ResourceFile "不必单独列出。清单中提到的不存在的文件将导致错误消息。

清单文件扩展名必须为.dnn.您可以在最后添加DNN版本;例如,MyDNNExtension.dnn7

将清单文件保存在包的基本文件夹中,并在压缩包文件时包含它。

模式

  < Package name="MyCompany. "SampleModule" type="Module" version="1.0.0"> My SampleModule  My SampleModule是一个演示模块。 MyIcon.png  MyCompany or MyName <组织>MyCompany Corporation www.example.com (电子邮件保护)    true  08.00.00  …< /组件>…    .

<包名= " MyCompany。MySampleModule" type="Module" version="1.0.0">…> < /包
  • 的名字必须是唯一的。为了确保您的套餐的独特性,请添加您的公司作为前缀。
  • 类型可以是以下之一:
  • 版本保存扩展的版本。

每个包代表一个DNN扩展。可以使用单个DNN清单安装多个扩展控件中的每个扩展标签。

包按照它们在清单中出现的顺序安装。

只有有关的信息第一个安装过程中会显示安装包。这包括包的名称、描述、所有者、许可证和发布说明。

friendlyName和description

My Sample Module My Sample Module is a demonstration Module

friendlyName而且描述显示在安装过程中,用于宿主>扩展页,其中列出已安装或可用于安装的扩展。的friendlyName可以包含空格,最多250个字符;的描述最多可容纳2000个字符。

iconFile

< iconFile > MyIcon.png < / iconFile >

可选的。该图标显示在DNN控制面板的下拉列表和扩展页面中。的. png格式优先。如果不指定,则使用DNN默认图标。

老板

 MyCompany or MyName <组织>MyCompany Inc. www.example.com (电子邮件保护)< /电子邮件> < /所有者>

可有可无,但值得鼓励。关于扩展的所有者或创建者的信息。

license和releaseNotes

 可有可无,但值得鼓励。这些文本文件将在安装过程中显示。提示用户接受或拒绝许可。安装过程中会显示版本说明。属性也可以将实际文本嵌入到标记中src属性。

azureCompatible

真正< azureCompatible > < / azureCompatible >

可选的。默认是.设置为真正的如果扩展与微软Azure兼容。

依赖关系

 08.00.00…< / >的依赖关系

依赖关系可以是以下类型中的任何一种(不区分大小写):

  • coreVersion.最小DNN版本所需的扩展被安装。例子:
    <依赖type = " coreVersion " > 08.00.00依赖> < /
  • managedPackage.正在安装的扩展所需的包的名称和最小版本。内核中必须已经列出了所需的包表格
    AnotherPackageRequiredByThisComponent
  • .正在安装的扩展所需的包的名称。内核中必须已经列出了所需的包表格例子:
    <依赖type = "包" > AnotherPackageRequiredByThisComponent依赖> < /
  • 类型.. net、DNN库或第三方库中的类型。确保安装程序可以创建指定类型的对象。例子:
    <依赖类型=“类型”> System.Security.Principal.GenericPrincipal依赖> < /
    提示: 完全有资格类型中未指定的类型App_Code文件夹,以避免与来自多个源的名称相似的类型冲突。
  • 类中包含的任何自定义依赖项类型依赖列表。DNN可以通过创建自定义依赖类型来扩展,这些依赖类型继承自DotNetNuke.Services.Installer.Dependencies.DependencyBase并且必须包含在依赖列表(宿主>列表).例子:
    <依赖type = " SomeCustomDependencyType " > ValueNeededBySomeCustomDependencyType依赖> < /
    注意:自定义依赖项类型必须已经安装,才能在其他安装中使用。

组件

  ……> < /组件

有些组件类型只适用于同名的包类型;通用组件类型可以与任何包类型一起使用。

包类型 特定组件类型 通用组件类型
Auth_System AuthenticationSystem

组装

清理

配置

文件

ResourceFile

脚本

容器 容器
CoreLanguagePack CoreLanguage
DashboardControl DashboardControl
ExtensionLanguagePack ExtensionLanguage
JavaScript_Library
图书馆
模块 模块
提供者

提供者

URL提供程序

皮肤 皮肤
SkinObject SkinObject
  • 组装.安装在主装置上的组件\ bin安装目录。程序集是扩展的编译代码部分。它们可以是您自己的程序集,也可以是随扩展附带的第三方程序集。
      < Assembly >          ...  
  • AuthenticationSystem.扩展使用的身份验证提供程序,例如脸谱网谷歌推特,微软账户.缺省情况下,DNN使用自己的数据库进行身份验证。
      Facebook     …> < /组件
  • 清理.在安装或升级包期间必须删除的文件列表。

    您可以在清单中单独列出这些文件。

       bin MyFile.dll  …> < /文件> < /组件

    您还可以在文本文件中列出文件及其路径。

    参见:
    • 组件类型配置在卸载过程中更新配置文件。
    • 组件类型脚本用于必须卸载的数据提供程序脚本。
  • 配置.要对指定配置文件进行的更改。
     < Config > web. >配置< / configFile < !——配置文件的名称,包括其相对于DNN安装根目录的路径。——>              …> < /组件

    有关节点属性,看到清单:XML合并

  • 容器.需要安装的容器。
            …> < / containerFiles > < /组件
  • DashboardControl.将在DNN仪表板中显示为单独选项卡的控件(宿主>指示板).
     < DashboardControl >        < DashboardControl />…> < /组件
  • 文件.需要安装的文件。默认情况下,只安装具有允许的文件扩展名的文件;主机用户可以在安装过程中跳过此安全检查。要查看或修改文件扩展名列表,请转到DNN安装并选择宿主>主机设置>其他设置>允许的文件扩展名
       <文件>      
    示例:复制img / MyAwesomeImageFile.jpg从zip文件到desktopmodules / mymodule里/图片/ MyFile.jpg
    desktopmodules/mymodule  images MyFile.jpg img/MyAwesomeImageFile.jpg  .jpg
  • CoreLanguage.针对特定区域性本地化核心DNN平台所需的语言包文件。核心语言包可以在DNN平台安装期间或之后的任何时候安装。
           < /名称> < / languageFile > < languageFile / >…> < / languageFiles > < /组件

    有关支持的语言代码列表,请参阅.NETCultureInfo类。

  • ExtensionLanguage.针对特定区域性本地化DNN扩展所需的语言包文件。
           < /名称> < / languageFile > < languageFile / >…> < / languageFiles > < /组件

    有关支持的语言代码列表,请参阅.NETCultureInfo类。

  • 模块.只有一个组件类型=“模块”允许在部分。要将一组模块作为一个单元安装,请创建一个模块相同清单中每个模块的节。
                                 ...        value   
  • 提供者.扩展允许的文件扩展名列表。这些附加的文件扩展名仅应用于当前安装,不会添加到中找到的文件扩展名的全局列表中宿主>主机设置>其他设置>允许的文件扩展名.允许使用以下文件扩展名:.ashx, .aspx, .ascx, .vb, .cs, .resx, .css, .js, .resources, .config, .xml, .htc, .html, .htm, .text, .vbproj, .csproj, .sln。
     .
  • ResourceFile.安装过程中需要扩展的Zip文件。可以用来代替组件类型= "文件"为包含多个文件的包简化清单。
          …> < / resourceFiles > < /组件
  • 脚本.扩展所需的数据库脚本。以下脚本的处理方式不同:
    • 安装。<dataprovidertype>(例如,安装。SqlDataProvider)执行之前所有其他脚本,如果该包是第一次安装的话。
    • 升级。<dataprovidertype>(例如,升级。SqlDataProvider)执行所有常规脚本。
         ...  
  • 皮肤.所有与主题相关的文件。安装程序需要在安装时解析主题文件以替换相对文件夹名称;因此,每个ASCX、HTML或CSS文件必须声明为skinFile.其他文件(即图像和脚本)可以使用组件类型打包ResourceFile简化主题清单的复杂性。
            …> < / skinFiles > < /组件
  • SkinObject.自定义主题对象。
          
  • URLProvider.类使用的自定义URL提供程序高级URL管理系统(AUM)
     < URLProvider >         
右键单击链接下载示例主题清单:MyThemeManifest.dnn