如何在没有DAL的情况下创建一个简单的Dotnetnuke模块

时间:2010-06-25 07:59:14

标签: asp.net vb.net dotnetnuke dotnetnuke-module

我几天来一直在寻找方法来做这件事......它真的杀了我......任何人,请帮忙。

我想在DNN(VB)中创建一个新模块......那个;

1. does not use DAL or DAL+
2. has only one view.ascx control
3. It has to be a compiled module

我不需要数据库连接,只需一个视图控件就可以使用任何铃声和口哨声。我觉得这很简单,但谷歌搜索一天,看起来很复杂。

任何愿意一步一步发布的人都会很棒......

I have the development environment already set up with;
1. DNN Starter kit
2. VS 2008
3. SQL server
4. DNN up and running in IIS
5. the project builds successfully

如果有人知道我可以使用VS 2008中的DNN动态模块模板构建模块,然后剥离DAL以及所有不必要的图层和额外控件,直到我只有一个工作的view.ascx打印出来“你好,世界!”到屏幕......那太好了!

非常感谢, 诺曼。

P.S :(我也尝试过adefwebserver.com上的hello world教程(http://www.adefwebserver.com/DotNetNukeHELP/DNN5_HelloWorld/Default.htm)-,并且该向导不像在教程中那样出现。)

1 个答案:

答案 0 :(得分:6)

首次学习绳索时,我建议从头开始编写并跳过所有模板, ahem ,垃圾。

以下是基本步骤:

  1. 创建一个新的Visual Studio“ASP.NET Web应用程序”项目,我在博客文章中概述了Web应用程序项目的基本配置设置:Creating DotNetNuke Modules using a Web Application Project (WAP)
  2. 添加对DotNetNuke.dll的引用
  3. 添加新的Web用户控件(.ascx)文件 - 将其命名为View.ascx。
  4. 确保用户控件继承自PortalModuleBase(见下文)。用一些示例hello world代码填写(再次,见下文)
  5. 您可以将此用户控件(单独)导入DNN。在DNN 5中,从主机中选择“创建新模块” - >模块定义页面。
  6. 然后,您可以根据需要从主机导出模块包 - >模块定义或主机 - >扩展页面(请记住,你需要在本地运行以便导出软件包,如果你在远程服务器上或某些东西,它将不允许你这样做)
  7. View.ascx:

    <%@ Control Language="vb" AutoEventWireup="false" CodeBehind="View.ascx.vb" Inherits="HelloWorld.View" %>
    
    <h1><asp:Literal ID="PageHeaderText" runat="server" /></h1>
    

    View.ascx.vb:

    Imports DotNetNuke.Entities.Modules
    
    Partial Public Class View
        Inherits PortalModuleBase
    
        Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
            If Not Page.IsPostBack Then
                PageHeaderText.Text = "Hello World"
            End If
        End Sub
    
    End Class