gpt4 book ai didi

c# - 避免解析数据库中的 xml 字段

转载 作者:太空宇宙 更新时间:2023-11-03 11:25:48 25 4
gpt4 key购买 nike

我的第一个应用程序(它是一个 CMS)使用 XAF(DevExpress 框架)。有一个调度程序组件。而且,它可以像 xml 一样保存事件的重复发生。例如:

<RecurrenceInfo Start="02/21/2012 09:00:00" End="02/28/2012 11:30:00" Id="e8507496-2be9-4bde-90a6-9eeea98fdc5a" Range="2" />

这是 Range 枚举(但还有一些其他枚举存在):

public enum RecurrenceRange {
NoEndDate,
OccurrenceCount,
EndByDate
}

此外,我还有另一个应用程序 (ASP.NET MVC)。我需要为特定日期或期间(今天、明天、当月和其他)选择事件。

表中的问题将是 10000(例如)条记录,然后我需要解析所有这些记录以找到请求日期的事件。我认为这是降低性能。

您看到了什么解决方案?

我想执行以下操作:创建事件时(在 CMS 中)然后在表中添加一些持久字段并以编程方式填充它们。

如何更好地创建用于存储此数据的字段?

还有一个问题。例如,Event 将在一周的当前时间 5 点和 8 点进行。调度程序将在表中创建两条记录:

id      EventName      RecurrenceInfo      Description        //otherfields
1 event1 xml1 description1
2 event1 xml2 description1

问题在于 Scheduler 多创建了一条记录并且除了 RecurrenceInfo 之外的所有字段都相等。我想再创建一个 id 列并为所有重复记录分配相同的值。

谢谢,对不起我的英语。

最佳答案

你可以制作一个Xml typed column并使用以下查询

select
(list of fields)
from
MyTable
where
MyXmlField.value('(/root[Start])', 'datetime') > '01.01.2001'

关于c# - 避免解析数据库中的 xml 字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9389169/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com