在数据库中存储可变数量的项目

时间:2012-02-05 02:23:28

标签: c# asp.net .net sql razor

我正在使用ASP.NET和Razor创建一个类似于Google日历的日历应用程序,并希望到目前为止能够获得有关我的设计的一些反馈。我的想法是拥有2个表,一个用于普通用户表,另一个用于事件表,用于存储用户ID和事件时间,事件ID,事件名称和事件持续时间。

我计划编写一些代码,在屏幕上显示日历,并允许用户多次选择,以便将它们标记为忙碌并为其命名。完成后,用户提交信息并将其插入数据库。

解决此日历构造的最佳方法是什么?我真的不能想到一个简单的方法。我猜我可以使用HTML和CSS创建一个漂亮的日历,也许JS可以使用拖放功能?我想当用户选择一个时间时,会创建一个具有开始时间和默认持续时间的对象,然后当它们拖动它时,持续时间会发生变化。我很困惑你会如何做到这一点,从空中拉出物体。 Google日历如何做到这一点?

然后如何将所有创建的对象存储在数据库中?我猜Razor有一个foreach结构,我可以迭代创建的所有对象并将它们逐个插入到数据库中?

另外,我如何清理数据库,垃圾收集已经发生的事件,同时保持不变的事件,即每天/每周?

道歉,如果问题含糊不清,如果问题太模糊,那么请按下我的详细信息,我可以更清楚,而不是关闭它。谢谢。

2 个答案:

答案 0 :(得分:0)

  1. 解决此日历构建的最佳方法是什么? 如果您想知道这里的数据结构,无论您做什么,都要这样做,使其与标准iCalendar标准兼容

  2. 我真的不能想到一个简单的方法。 日历是相当复杂的应用程序,没有简单的方法。 (活动,分享活动,暂定,服务员,提醒......)

  3. 我猜我可以使用HTML和CSS创建一个漂亮的日历,也许JS可以使用拖放功能?

  4. 我想当用户选择一个时间时,会创建一个具有开始时间和默认持续时间的对象,然后当它们拖动它时,持续时间会发生变化。我很困惑你会如何做到这一点,从空中拉出物体。 Google日历如何做到这一点? 您可以找到一些现有的jquery插件(尝试使用this开始,或者查看this列表)。

  5. 然后如何将所有创建的对象存储在数据库中?我猜Razor有一个foreach结构,我可以迭代创建的所有对象并将它们逐个插入到数据库中? 查看这些jquery插件,看看它们如何与服务器端通信。您将最终发出ajax请求,然后在数据库中进行数据库查询。 Razor与数据库无关...... Razor也与客户端交互无关,它只是呈现页面而其他所有内容都在js端。

  6. 另外,我如何清理数据库,垃圾收集已经发生的事件,同时保持不变的事件,即每天/每周? 我不会从数据库中删除任何东西......没有看到原因。抓住你所拥有的一切并填写日历。用户将始终查看月/日/周...抓取该期间的数据并显示。当他回去一年时,他将获得所有数据。

答案 1 :(得分:-2)

你见过我的朋友,Google吗?

特别是4GuysFromRolla has a tutorialnice looking open source calendar control some tutorials,{{3}}可以让您顺利上路。