【问题标题】:c# - create dynamic code with templates bases on optionsc# - 基于选项使用模板创建动态代码
【发布时间】:2013-03-26 10:56:27
【问题描述】:

我有一个与基于模板的 c# 动态代码生成 (html) 相关的问题。用户设置所有选项(例如是否应该显示,模板中的图像是否应该在特定日期之前更改,......)并提供代码生成所需的内容(文本,图像)。 WIFI热点站点需要生成的代码。

模板 由 html、css 和 javascript 组成,它们在运行时由用户定义的设置进行扩展和修改。我还想在模板中提供“元设置”来定义,是否可以禁用某些选项。

我的主要问题:

如何定义模板以轻松动态扩展模板代码?例如,如果在运行时启用了用户选项,我需要在顶部添加 javascript 代码,在另一个(特定)位置下方添加 HTML 代码。另一个例子是在禁用另一个选项时隐藏内容(定义的)...

我不确定处理该要求的最佳做法是什么。也许带有id 属性的HTML 元素可以帮助消除一些问题。但是对于 JavaScript,我不确定。也许模板需要是在运行时创建最终 HTML 的 XML?有什么想法吗?

有人知道如何处理吗?你知道我的意思吗?

提前感谢您的帮助, 多米尼克

更新/信息:

该项目是用纯 C# 编写的 - 没有任何 ASP.NET。这是一个使用 html 文件和 GENERATING html 文件(作为输出)的桌面项目。

【问题讨论】:

  • 我会获取 DotNetNuke 并从那里开始,至少您将拥有一个完整的 CMS 结构(基本上是您所追求的,并且需要大量的时间和精力来实现)
  • 该项目是用纯 c# 编写的 - 没有 asp。只有模板是 html 并且 c# 代码也应该生成一个 html 文件。但它不是一个网络,而是一个桌面项目。

标签: c# templates dynamic options


【解决方案1】:

我想你可以使用 ASP.NET MVC Razor 视图引擎在 this question 的帮助下将 html 渲染到文件中。使用 Razor,您将获得对动态视图(也称为模板)更改、丰富的模板语法等的支持。创建网站时您可以做的一切。只需将 html 呈现到文件而不是响应正文。

【讨论】:

  • 代码是用c#写的。我只使用 html 代码生成和操作。 c# 项目本身适用于桌面用户。
  • 好的。我不认为这是一个大问题。您只能从 asp mvc 使用视图引擎。只是对 http 上下文的一些嘲笑,但就像您编写测试一样。您也可以尝试 NVelocity。这也是我在某些项目中用来生成基于 html 的电子邮件的好东西。
猜你喜欢
  • 2017-03-24
  • 2012-08-20
  • 2011-08-20
  • 2010-10-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-03-20
相关资源
最近更新 更多