3

我按照 Orchard 网站上的 HelloWorld 模块教程进行操作,但我并没有真正看到任何有关创建交互式模块的教程。基本上,我只是想创建一个包含 TextBox 和 Button 的模块,当您单击按钮时,它的标签将显示 FizzBu​​zz、Fizz 或 Buzz,具体取决于您输入到文本框中的数字是否可被 15,3 整除,或 5,但我不清楚如何做到这一点。有人可以指出我正确的方向。谢谢

4

1 回答 1

5

这是可行的,我会尽力帮助你:)

Orchard 开发是围绕模块构建的。模块以“内容项”的形式提供可创建的内容元素(页面、博客、博客文章、小部件等),其中包含许多不同的“内容部分”——基本的 Orchard 内容构建块。

如果你想使用 Orchard 内容渲染框架(例如,想把你的 FizzBu​​zz 表单放在一个可重用的小部件中)——你应该首先创建一个内容部分并添加适当的 ajax 表单。 如何做到这一点在Orchard 文档中有很好的描述——这里这里。我鼓励您使用Orchard Jumpstart模块,因为它包含示例内容部分(带有文档),可用于快速开发。我还写了一篇关于内容部分创建背后的基本概念的文章。

下一步是将 FizzBu​​zz 逻辑放在某处。在哪里?在控制器中,与任何其他普通的 ASP.NET MVC 应用程序一样,因为 Orchard 模块基本上是由 Orchard Framework 粘合在一起的经过调整、分离的 ASP.NET MVC 应用程序(区域)因此,在模块的 /Controllers 文件夹中创建控制器,添加适当的操作,这将根据发布的数量返回 FizzBu​​zz/Fizz/Buzz。

作为最后一步,您必须将 ajax 表单指向您的控制器操作并检索结果。

总结:

  1. 创建一个 FizzBu​​zz 内容部分和小部件,其中将包含您的 FizzBu​​zz 内容部分。
  2. 创建一个控制器和适当的动作,采取数字并返回一个字符串内容。
  3. 告诉您部件的 .cshtml Razor 视图文件中的 ajax 表单发布到您的控制器操作( Ajax.BeginForm ) 并将返回的数据放入一些现有的 <div>

于 2011-03-06T18:58:56.243 回答