我是DNN开发的新手。我正在使用DNN-7版本。实际上我正在运行有关Dnn项目的一个问题。 我有多个项目的DNN解决方案,我想将所有项目合并到单个项目中。 以前,我需要多个页面,这样我就可以为每个页面创建多个模块。但现在它认为工作太繁琐。
总的想法是我们如何在单个项目中管理多个视图。
答案 0 :(得分:3)
执行此类操作的常用方法是使用项目的.DNN
文件来拥有多个“包”。
您可以在以下位置查看示例:
https://github.com/ChrisHammond/Engage-Publish/blob/master/EngagePublish.5.dnn
<dotnetnuke version="5.0" type="Package">
<packages>
<package name="Engage: Publish" type="Module" version="5.7.0">
<friendlyName>Engage: Publish</friendlyName>
<description>The DotNetNuke Publishing module by Engage Software (www.engagesoftware.com)</description>
<iconFile>DesktopModules/EngagePublish/Images/publish-icon32.png</iconFile>
<owner>
<name>Engage Software</name>
<organization>Engage Software</organization>
<url>http://www.engagesoftware.com/</url>
<email>support@engagemodules.com</email>
</owner>
<license src="Licenses\EULA-Standard.htm" />
<releaseNotes src="ReleaseNotes_5.7.0.htm" />
<dependencies>
<dependency type="CoreVersion">5.0.0</dependency>
</dependencies>
<components>
<component type="ResourceFile" installOrder="0">
<resourceFiles>
<basePath>DesktopModules/EngagePublish</basePath>
<resourceFile>
<name>Resources.zip</name>
</resourceFile>
</resourceFiles>
</component>
<component type="Script" installOrder="1">
<!-- use installOrder to guarantee that scripts run before assembly installs -->
<!-- so that 5.7.0 script can fix incorrect assembly version numbers -->
<scripts>
<basePath>DesktopModules\EngagePublish</basePath>
<script type="Install">
<name>03.00.01.SqlDataProvider</name>
<version>03.00.01</version>
</script>
<script type="Install">
<name>03.00.02.SqlDataProvider</name>
<version>03.00.02</version>
</script>
<script type="Install">
<name>03.00.04.SqlDataProvider</name>
<version>03.00.04</version>
</script>
<script type="Install">
<name>03.00.05.SqlDataProvider</name>
<version>03.00.05</version>
</script>
<script type="Install">
<name>03.00.06.SqlDataProvider</name>
<version>03.00.06</version>
</script>
<script type="Install">
<name>03.00.07.SqlDataProvider</name>
<version>03.00.07</version>
</script>
<script type="Install">
<name>03.00.08.SqlDataProvider</name>
<version>03.00.08</version>
</script>
<script type="Install">
<name>03.00.09.SqlDataProvider</name>
<version>03.00.09</version>
</script>
<script type="Install">
<name>03.00.10.SqlDataProvider</name>
<version>03.00.10</version>
</script>
<script type="Install">
<name>03.00.12.SqlDataProvider</name>
<version>03.00.12</version>
</script>
<script type="Install">
<name>03.00.13.SqlDataProvider</name>
<version>03.00.13</version>
</script>
<script type="Install">
<name>03.00.14.SqlDataProvider</name>
<version>03.00.14</version>
</script>
<script type="Install">
<name>03.00.15.SqlDataProvider</name>
<version>03.00.15</version>
</script>
<script type="Install">
<name>03.00.16.SqlDataProvider</name>
<version>03.00.16</version>
</script>
<script type="Install">
<name>03.00.17.SqlDataProvider</name>
<version>03.00.17</version>
</script>
<script type="Install">
<name>03.00.19.SqlDataProvider</name>
<version>03.00.19</version>
</script>
<script type="Install">
<name>03.00.21.SqlDataProvider</name>
<version>03.00.21</version>
</script>
<script type="Install">
<name>03.00.23.SqlDataProvider</name>
<version>03.00.23</version>
</script>
<script type="Install">
<name>03.00.24.SqlDataProvider</name>
<version>03.00.24</version>
</script>
<script type="Install">
<name>04.00.00.SqlDataProvider</name>
<version>04.00.00</version>
</script>
<script type="Install">
<name>04.00.01.SqlDataProvider</name>
<version>04.00.01</version>
</script>
<script type="Install">
<name>04.00.02.SqlDataProvider</name>
<version>04.00.02</version>
</script>
<script type="Install">
<name>04.00.03.SqlDataProvider</name>
<version>04.00.03</version>
</script>
<script type="Install">
<name>04.00.04.SqlDataProvider</name>
<version>04.00.04</version>
</script>
<script type="Install">
<name>04.00.05.SqlDataProvider</name>
<version>04.00.05</version>
</script>
<script type="Install">
<name>04.00.06.SqlDataProvider</name>
<version>04.00.06</version>
</script>
<script type="Install">
<name>04.00.07.SqlDataProvider</name>
<version>04.00.07</version>
</script>
<script type="Install">
<name>04.00.08.SqlDataProvider</name>
<version>04.00.08</version>
</script>
<script type="Install">
<name>04.00.09.SqlDataProvider</name>
<version>04.00.09</version>
</script>
<script type="Install">
<name>04.01.00.SqlDataProvider</name>
<version>04.01.00</version>
</script>
<script type="Install">
<name>04.01.01.SqlDataProvider</name>
<version>04.01.01</version>
</script>
<script type="Install">
<name>04.02.00.SqlDataProvider</name>
<version>04.02.00</version>
</script>
<script type="Install">
<name>04.02.01.SqlDataProvider</name>
<version>04.02.01</version>
</script>
<script type="Install">
<name>04.02.03.SqlDataProvider</name>
<version>04.02.03</version>
</script>
<script type="Install">
<name>04.02.05.SqlDataProvider</name>
<version>04.02.05</version>
</script>
<script type="Install">
<name>04.02.06.SqlDataProvider</name>
<version>04.02.06</version>
</script>
<script type="Install">
<name>04.02.07.SqlDataProvider</name>
<version>04.02.07</version>
</script>
<script type="Install">
<name>04.02.09.SqlDataProvider</name>
<version>04.02.09</version>
</script>
<script type="Install">
<name>04.03.00.SqlDataProvider</name>
<version>04.03.00</version>
</script>
<script type="Install">
<name>04.03.01.SqlDataProvider</name>
<version>04.03.01</version>
</script>
<script type="Install">
<name>04.03.02.SqlDataProvider</name>
<version>04.03.02</version>
</script>
<script type="Install">
<name>04.03.03.SqlDataProvider</name>
<version>04.03.03</version>
</script>
<script type="Install">
<name>04.03.04.SqlDataProvider</name>
<version>04.03.04</version>
</script>
<script type="Install">
<name>04.03.08.SqlDataProvider</name>
<version>04.03.08</version>
</script>
<script type="Install">
<name>04.03.09.SqlDataProvider</name>
<version>04.03.09</version>
</script>
<script type="Install">
<name>04.04.04.SqlDataProvider</name>
<version>04.04.04</version>
</script>
<script type="Install">
<name>04.04.05.SqlDataProvider</name>
<version>04.04.05</version>
</script>
<script type="Install">
<name>04.04.06.SqlDataProvider</name>
<version>04.04.06</version>
</script>
<script type="Install">
<name>04.05.01.SqlDataProvider</name>
<version>04.05.01</version>
</script>
<script type="Install">
<name>04.05.02.SqlDataProvider</name>
<version>04.05.02</version>
</script>
<script type="Install">
<name>04.05.03.SqlDataProvider</name>
<version>04.05.03</version>
</script>
<script type="Install">
<name>04.05.05.SqlDataProvider</name>
<version>04.05.05</version>
</script>
<script type="Install">
<name>05.00.01.SqlDataProvider</name>
<version>05.00.01</version>
</script>
<script type="Install">
<name>05.00.02.SqlDataProvider</name>
<version>05.00.02</version>
</script>
<script type="Install">
<name>05.00.03.SqlDataProvider</name>
<version>05.00.03</version>
</script>
<script type="Install">
<name>05.01.00.SqlDataProvider</name>
<version>05.01.00</version>
</script>
<script type="Install">
<name>05.01.02.SqlDataProvider</name>
<version>05.01.02</version>
</script>
<script type="Install">
<name>05.01.04.SqlDataProvider</name>
<version>05.01.04</version>
</script>
<script type="Install">
<name>05.01.05.SqlDataProvider</name>
<version>05.01.05</version>
</script>
<script type="Install">
<name>05.01.06.SqlDataProvider</name>
<version>05.01.06</version>
</script>
<script type="Install">
<name>05.01.08.SqlDataProvider</name>
<version>05.01.08</version>
</script>
<script type="Install">
<name>05.01.09.SqlDataProvider</name>
<version>05.01.09</version>
</script>
<script type="Install">
<name>05.02.01.SqlDataProvider</name>
<version>05.02.01</version>
</script>
<script type="Install">
<name>05.02.03.SqlDataProvider</name>
<version>05.02.03</version>
</script>
<script type="Install">
<name>05.02.05.SqlDataProvider</name>
<version>05.02.05</version>
</script>
<script type="Install">
<name>05.02.09.SqlDataProvider</name>
<version>05.02.09</version>
</script>
<script type="Install">
<name>05.03.00.SqlDataProvider</name>
<version>05.03.00</version>
</script>
<script type="Install">
<name>05.03.03.SqlDataProvider</name>
<version>05.03.03</version>
</script>
<script type="Install">
<name>05.03.07.SqlDataProvider</name>
<version>05.03.07</version>
</script>
<script type="Install">
<name>05.03.08.SqlDataProvider</name>
<version>05.03.08</version>
</script>
<script type="Install">
<name>05.03.09.SqlDataProvider</name>
<version>05.03.09</version>
</script>
<script type="Install">
<name>05.05.00.SqlDataProvider</name>
<version>05.05.00</version>
</script>
<script type="Install">
<name>05.05.02.SqlDataProvider</name>
<version>05.05.02</version>
</script>
<script type="Install">
<name>05.05.04.SqlDataProvider</name>
<version>05.05.04</version>
</script>
<script type="Install">
<name>05.07.00.SqlDataProvider</name>
<version>05.07.00</version>
</script>
<script type="Install">
<name>05.08.00.SqlDataProvider</name>
<version>05.08.00</version>
</script>
<script type="Install">
<name>05.08.01.SqlDataProvider</name>
<version>05.08.01</version>
</script>
<script type="UnInstall">
<name>Uninstall.SqlDataProvider</name>
<version latestVersion="latestVersion">5.7.0</version>
</script>
</scripts>
</component>
<component type="Module" installOrder="2">
<desktopModule>
<moduleName>Engage: Publish</moduleName>
<foldername>EngagePublish</foldername>
<businessControllerClass>Engage.Dnn.Publish.Util.FeaturesController</businessControllerClass>
<supportedFeatures>
<supportedFeature type="Portable" />
<supportedFeature type="Searchable" />
</supportedFeatures>
<moduleDefinitions>
<moduleDefinition>
<friendlyName>Engage: Publish</friendlyName>
<defaultCacheTime>0</defaultCacheTime>
<moduleControls>
<moduleControl>
<controlKey></controlKey>
<controlSrc>DesktopModules/EngagePublish/ItemDisplay.ascx</controlSrc>
<controlType>View</controlType>
<helpUrl>http://www.EngageSoftware.com/Support.aspx</helpUrl>
</moduleControl>
<moduleControl>
<controlKey>AdminContainer</controlKey>
<controlSrc>DesktopModules/EngagePublish/AdminLoader.ascx</controlSrc>
<controlType>Edit</controlType>
<helpUrl>http://www.EngageSoftware.com/Support.aspx</helpUrl>
</moduleControl>
<moduleControl>
<controlKey>Settings</controlKey>
<controlSrc>DesktopModules/EngagePublish/ItemDisplayOptions.ascx</controlSrc>
<controlType>Edit</controlType>
<helpUrl>http://www.EngageSoftware.com/Support.aspx</helpUrl>
</moduleControl>
<moduleControl>
<controlKey>ItemPreview</controlKey>
<controlSrc>DesktopModules/EngagePublish/ItemPreview.ascx</controlSrc>
<controlType>Edit</controlType>
<helpUrl>http://www.EngageSoftware.com/Support.aspx</helpUrl>
</moduleControl>
</moduleControls>
</moduleDefinition>
</moduleDefinitions>
</desktopModule>
</component>
<component type="Assembly" installOrder="3">
<assemblies>
<assembly>
<name>EngagePublish.dll</name>
<version latestVersion="latestVersion">5.7.0</version>
</assembly>
<assembly>
<name>CookComputing.XmlRpcV2.dll</name>
<version>0.0.0</version>
</assembly>
<assembly>
<name>Engage.Dnn.UserFeedback.dll</name>
<version>1.0.1</version>
</assembly>
<assembly>
<name>AjaxControlToolkit.dll</name>
<version>1.0.20229</version>
</assembly>
<assembly>
<name>Engage.Dnn.Framework.dll</name>
<version>3.1.5</version>
</assembly>
<assembly>
<name>Engage.Framework.dll</name>
<version>3.1.3</version>
</assembly>
</assemblies>
</component>
<component type="Cleanup" installOrder="4" version="05.05.04" fileName="05.05.04.txt" />
</components>
</package>
<package name="Engage: Publish Tag Cloud" type="Module" version="5.7.0">
<friendlyName>Engage: Publish Tag Cloud</friendlyName>
<description>The tag cloud for the Engage: Publish module.</description>
<iconFile>DesktopModules/EngagePublish/Images/publish-icon32.png</iconFile>
<owner>
<name>Engage Software</name>
<organization>Engage Software</organization>
<url>http://www.engagesoftware.com/</url>
<email>support@engagemodules.com</email>
</owner>
<license src="Licenses\EULA-Standard.htm" />
<releaseNotes src="ReleaseNotes_5.7.0.htm" />
<components>
<component type="Module">
<desktopModule>
<moduleName>Engage: Publish Tag Cloud</moduleName>
<foldername>EngagePublish/Tags</foldername>
<businessControllerClass>Engage.Dnn.Publish.Util.FeaturesController</businessControllerClass>
<supportedFeatures>
<supportedFeature type="Portable" />
<supportedFeature type="Searchable" />
</supportedFeatures>
<moduleDefinitions>
<moduleDefinition>
<friendlyName>Engage: Publish Tag Cloud</friendlyName>
<defaultCacheTime>0</defaultCacheTime>
<moduleControls>
<moduleControl>
<controlKey></controlKey>
<controlSrc>DesktopModules/EngagePublish/Tags/TagCloud.ascx</controlSrc>
<controlType>View</controlType>
<helpUrl>http://EngageSoftware.com/Support.aspx</helpUrl>
</moduleControl>
<moduleControl>
<controlKey>Settings</controlKey>
<controlSrc>DesktopModules/EngagePublish/Tags/TagCloudOptions.ascx</controlSrc>
<controlType>Edit</controlType>
<helpUrl>http://EngageSoftware.com/Support.aspx</helpUrl>
</moduleControl>
</moduleControls>
</moduleDefinition>
</moduleDefinitions>
</desktopModule>
</component>
</components>
</package>
<package name="Engage: Publish Text/HTML" type="Module" version="5.7.0">
<friendlyName>Engage: Text/HTML</friendlyName>
<description>A Text/HTML replacement module for the Engage: Publish workflow system.</description>
<iconFile>DesktopModules/EngagePublish/Images/publish-icon32.png</iconFile>
<owner>
<name>Engage Software</name>
<organization>Engage Software</organization>
<url>http://www.engagesoftware.com/</url>
<email>support@engagemodules.com</email>
</owner>
<license src="Licenses\EULA-Standard.htm" />
<releaseNotes src="ReleaseNotes_5.7.0.htm" />
<components>
<component type="Module">
<desktopModule>
<moduleName>Engage: Publish Text/HTML</moduleName>
<foldername>EngagePublish/TextHTML</foldername>
<businessControllerClass>Engage.Dnn.Publish.TextHTML.FeaturesController</businessControllerClass>
<supportedFeatures>
<supportedFeature type="Portable" />
<supportedFeature type="Searchable" />
</supportedFeatures>
<moduleDefinitions>
<moduleDefinition>
<friendlyName>Engage: Publish Text/HTML</friendlyName>
<defaultCacheTime>0</defaultCacheTime>
<moduleControls>
<moduleControl>
<controlKey></controlKey>
<controlSrc>DesktopModules/EngagePublish/TextHTML/View.ascx</controlSrc>
<controlType>View</controlType>
<helpUrl>http://EngageSoftware.com/Support.aspx</helpUrl>
</moduleControl>
<moduleControl>
<controlKey>Edit</controlKey>
<controlSrc>DesktopModules/EngagePublish/TextHTML/Edit.ascx</controlSrc>
<controlType>Edit</controlType>
<helpUrl>http://EngageSoftware.com/Support.aspx</helpUrl>
</moduleControl>
<moduleControl>
<controlKey>AdminContainer</controlKey>
<controlSrc>DesktopModules/EngagePublish/AdminLoader.ascx</controlSrc>
<controlType>Edit</controlType>
<helpUrl>http://EngageSoftware.com/Support.aspx</helpUrl>
</moduleControl>
</moduleControls>
</moduleDefinition>
</moduleDefinitions>
</desktopModule>
</component>
</components>
</package>
</packages>
</dotnetnuke>