我有一个 Oracle 数据库,需要根据我的 Dot Net Web 应用程序中发生的事件发送电子邮件通知。电子邮件通知采用 HTML 格式。根据要生成的电子邮件通知,我使用了不同的模板。每个都连接到一个 Sproc。因此,当事件被调用时,我将一个 Id 传递给处理程序,它调用一个存储过程。然后,我获得了 HTML 格式的电子邮件模板,其中包含要替换为 sproc 中的字段的标签。然后,我搜索模板中的任何标签并将其替换为记录集中的相应字段。电子邮件 recipeint 被放入,电子邮件以 HTML 格式发送。这一切都很好。
但是我现在需要在电子邮件通知的表格中显示多行。因此,例如,图书馆书籍的详细信息。我可以通过遍历记录集并为每个记录集生成一个新行来获取所有行并在 dot net 中动态构建 HTML 表行,但他会破坏我常用的标记替换方法。 所以我想知道我能否在 PL SQL 中构建这些多行并将其作为一个字段返回,我可以在其中用记录集中字段的内容替换我的 html 电子邮件模板中的标签。该字段将包含所有必需记录的 HTML 版本……准备好作为表格。所以我会在我的模板中有一个名为 OVerDueBooks 的标签,并将该标签替换为我的记录集中的字段 Over_Due_Books。该字段将以 html 格式包含所有逾期图书记录,因此我只需将标签替换为内容即可。
谢谢米克
最佳答案
数据量是多少?只要收集的长度不超过 4000 字节,应该不难。
搜索 STRAGG 以了解将 VARCHAR2 集合聚合到单行中的各种机制。
剩下的应该是SELECT '<tr>'||....||'</tr>' ....
的问题了
查看 UTL_URL.ESCAPE 以清除任何可能干扰 HTML 的字符。
关于c# - 为 Oracle 返回一个记录集作为 HTML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6292126/