首次开发rainbow的模块,其实很简单,就是webcontrol.ascx控件。按照How to build a Private Module Assembly in Rainbow.doc过程一点一点的来。(按照本人的理解和原文翻译,加上自己的实际操作)
首先建立一个解决方案,然后添加工程,使用web。制作好web共享目录,然后再工程中添加用户控件。再里面工程自动建立的webform1.aspx文件不要删除,用它作调试用。将他设置为起始页。首先我们看看建立的工程是否正常。在添加的用户控件中写上hello world。然后打开webform1.aspx 文件,将用户控件(helloworld.ascx)托拽到webform1中。使用f5运行这是启动ie中可以正常显示。好的这样我们便可以进行开发了。
要开发rainbow的模块必然我们要使用它的dll所以要引用他的dll.一般使用log4net.dll,rainbow.dll还有Esperantus.dll。下面我们打开helloworld.ascx.cs添加
using Rainbow.UI;
using Rainbow.UI.WebControls;

这样便可以正常引用rainbow的一般控件了。
下面我们将 

public class helloworld : System.Web.UI.UserControl
改成
 public class helloworld : PortalModuleControl

可以更改
override protected void OnInit(EventArgs e)
{ InitializeComponent();
 DesktopModuleTitle minttitle= new DesktopModuleTitle();

   Controls.AddAt(0, minttitle);
 base.OnInit(e); }
这样可以在标题兰显示出模块的名称
最后我们要得到他的guid
  public override Guid GuidID
  {
   get
   {
    return new Guid("{3D1DA2CD-1879-48fd-B4DB-8C9FABE6D16A}");
   }
  }

再工具,创建guid然后将新的值替换即可。
然后我们先不要运行,因为 public class helloworld : PortalModuleControl这个市编译不成功的。我们将webform1.aspx从项目中排除然后再f5运行。成功!
最后一步我们要将helloworld这个模块放到rainbow中。
我们要将bin目录的rainbowprj.dll,和rainbow.pdb文件靠到rianbow的bin中。在DesktopModules文件夹内建立helloworld然后将helloworld.ascx文件拷贝进去。我们可以制作install.xml文件进行自动安装。格式为:
<?xml version="1.0" encoding="utf-8" ?>
<Modules>
 <Module>
  <FriendlyName>Helloworld</FriendlyName>
  <DesktopSource>DesktopModules/helloworld/helloworld.ascx</DesktopSource>
  <MobileSource></MobileSource>
 </Module>
</Modules>

使用管理员登陆rainbow然后再模块界面添加模块
输入

就是这么简单阿,希望能给第一次开发的人提供一个帮助,也希望高手提出宝贵意见。

相关文章:

  • 2022-12-23
  • 2021-11-11
  • 2021-11-05
  • 2022-02-18
  • 2022-12-23
  • 2021-11-02
  • 2022-12-23
  • 2021-12-26
猜你喜欢
  • 2021-11-02
  • 2021-08-20
  • 2022-12-23
  • 2022-12-23
  • 2021-11-02
  • 2021-09-06
  • 2021-06-15
相关资源
相似解决方案